/*
Theme Name: Souzoku
*/
html {overflow: auto;}
html.wf-loading {
	opacity: 0;
	transition: all .3s ease;
}
html.wf-inactive,
html.wf-active {
	opacity: 1;
}
body {font-family:"YakuHanJPs",'Noto Sans JP', sans-serif, "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;font-size: 16px;color:#404040;background: #fff;line-height: 1.8;}
.sp {display:none;}
.sp-only {display: none;}

img {
    width: 100%;
    height: auto;
}
/*パンくずリスト*/
.breadcrumbs {
    font-size: 11px;
    padding: 5px 0;
    border-bottom: solid 1px #C8DCDE;
}
.breadcrumbs a{}

/*ページナビ*/
.pagelist {text-align: center;margin-top: 30px;}
.wp-pagenavi span.current {
    border: none!important;
    background: #1d2088;
    color: #fff;
}
.wp-pagenavi a:hover {background: #fff!important}
.wp-pagenavi a, .wp-pagenavi span {
    border: none!important;
    padding: 3px 10px 5px!important;
}

/*flexbox*/
.fbox {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
}
.fb-center {justify-content: center;}
.fb-between {justify-content: space-between;}


/*リンク*/
a {color:#1797A8;text-decoration: none; transition: opacity .3s ease 0s;}
a:hover {opacity: 0.7}
/*見出し*/
/* h1,h2,h3,h4,h5 {color:;} */
h1 {
    margin:0;
    font-size: 12px;
    font-weight: normal;
    line-height: 1;
    color: #263959
}
h2 {font-size: 24px;
    margin-bottom: 30px;
    color: #1797A8;
}
h3 {
    font-size: 24px;
    margin: 0px 0 20px;
    line-height: 1.6;
    color: #1797A8;
}
h4 {
    font-size: 15px ;
    color:#1797A8;
    font-weight: normal;
}
h5 {
    font-size: 16px;
    color: #263959;
    margin-bottom: 20px;
}
p {margin-bottom: 30px;text-align: justify;color: #404040;}
.en {font-family: 'Cookie', cursive;}
.sfont {font-size: 12px}
.lfont {font-size: 18px}
.bold {font-weight: bold;}
figure {text-align: center;}
.mincho {font-family:'Noto Serif JP', "ヒラギノ明朝 ProN W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;}
.green {color: #107f29;}
.orange {color: #ec6941;}
.red {color:#ff0000;}
.kome {font-size: 12px;margin-top: 5px;}
.mb {margin-bottom: 50px;}
.lightbox .lb-image {border: 34px solid white;}
a.lightbox-cursor {
    position: relative;
    display: block;
    transition: opacity 1.3s ease 0s;
    transition: background-image 1.3s ;
}
em {
    font-weight: bold;
    font-style: normal;
}
strong {
    background-image: linear-gradient(transparent 60%, #fff69d 0%);
    font-weight: bold;
}

a.lightbox-cursor:after {
    content: "";
    display: block;
    position: absolute;
    background: rgba(255, 255, 255, 0.7)url(images/big-icon/png) no-repeat;
    height: 100%;
    top: 0;
    width: 100%;
    background-position: center;
    background-size: 70px;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}
a.lightbox-cursor:hover:after {
    opacity: 1;
    visibility: visible;
}
.arrow{
    position: absolute;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
    top: 22px;
    right: 0;
}
.column-r .arrow{
    position: absolute;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
    top: 20px;
    left: -15px;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.right::before{
    width: 10px;
    height: 10px;
    border-top: 1px solid #06A8BE;
    border-right: 1px solid #06A8BE;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.arrb {
    display: block;
    top: 2px;
    width: 30px;
    margin: 0 auto;
}
.bottom::before{
    left: 10px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.balloon1{
    position: relative;
    padding: 20px;
    width: 120px;
    height: 75px;
    line-height: 17px;
    border-radius: 50%;
    text-align: center;
    color: #ffffff;
    letter-spacing: 0em;
    font-size: 14px;
    background-color: #eb6100;
    display: inline-block;
    margin-right: 20px;
}
.balloon1::before{
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    left: 77px;
    bottom: -10px;
    border-right: 20px solid #eb6100;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    transform: rotate(-120deg);
}

/*リスト・テーブル*/
table {width: 100%;margin-bottom: 40px;}
td,th {
    font-weight: normal;
    padding:  22px 10px 22px;
    border-bottom: solid 1px #bfbfbf;
    font-size: 14px;
    line-height: 1.5;
}
th {
    text-align: left;
    width: 30%;
    vertical-align: top;
}
td {width:70%}
dl{display:flex;flex-wrap: wrap;margin-bottom: 20px;}
dt {width: 27%;}
dd {width: 73%;margin-left: 0;}

/*カラム設定*/
.wrapper {}
.container {padding: 0 20px;margin:0 auto;}
.main-v-area {max-width: 1400px;position: relative;height: 100%;}
.con-l {max-width: 1140px;}
.con-m {max-width: 1080px;}
.con-s {width: 800px;}
.con-ss {max-width: 600px;}
.content-area {
    padding: 50px 0;
}
.content-single {width: 820px;margin-right: 30px;}

/*ヘッダー*/
header {}
.logo-area {padding: 30px 25px 25px 0;width: 45%}
.logo-area img {width:148px;}
.logo-tx {
    position: relative;
    left: 14px;
    line-height: 1.3;
    display: inline-block;
    font-size: 14px;
    border-left: solid  2px #263959;
    padding-left: 13px;
    color: #263959;
}
.logo-tx span {font-size: 12px}
.head-cta {
    width: 38%;
    width: 412px;
    height: 63px;
    margin-top: 25px;
}
.head-tel {
    font-size: 12px;
    margin-right: 20px;
}
.head-tel a{
    display: block;
    font-size: 29px;
    line-height: 1.3;
}
.head-tel a img{
    width: 24px;
    position: relative;
    top: -5px;
    margin-right: 5px;
}
.contact {
    background: #06A8BE;
    font-size: 16px;
    border-radius: 5px;
    text-align: center;
    background: #1797a8; /* Old browsers */
    background: -moz-linear-gradient(top, #1797a8 0%, #03545f 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #1797a8 0%,#03545f 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #1797a8 0%,#03545f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1797a8', endColorstr='#03545f',GradientType=0 );
    height: 60px;
}
.contact a {
    display: block;
    color: #fff;
    padding: 16px 25px 16px;
}
.contact img {
    width: 30px;
}
.sp-menu-cta {display: none;}

/*ナビメニュー*/
.nav-area {
    margin: 10px 0px 0;
    background: #FAFAFA;
    padding: 14px;
}
.sp-btn {display: none}
.sp-nav {display: none}
.navbar {margin: 0 auto;max-width: 1100px}
.navbar li a {
    color: #263959;
    padding: 10px 25px;
    display: block;
    font-size: 16px;
}
.navbar li a:hover{opacity: 1}
/*サブメニュー*/
.sub-menu {
    width: 300px;
    background: #fafafa;
    display: none;
    position: absolute;
    z-index: 5;
    top: 165px;
    text-align: left;
    padding: 10px 0 5px;    
}
.sub-menu li a{padding: 10px 25px;font-size: 12px;}
.navbar li:hover::after{
    opacity: 1;
    transition: all 0.5s ease-in-out;
}
.navbar li:hover .sub-menu {
    display: block;
    animation: show 0.3s linear 0s;
    animation: slide 0.3s linear;
}

@keyframes show{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}

@keyframes slide {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0px);
    }
}


/*  メニューアクティブ時  */
nav.open {transform: translate(0);}
.on {display: block;}




/*フッター*/
footer {
    padding: 50px 0 10px;
}
.footer-logo img{width:148px;}
.footer-tx {
    font-size: 12px;
    line-height: 1.8;
}
.site-link {
    display: inline-block;
    background: #fff;
    border-radius: 5px;
    margin: 10px 10px 0 0;
}
.site-link a{display: block;padding: 3px 20px;}
.site-link img {
    width:11px;
    position: relative;
    top: -6px;
    left: 3px;
}
.footer-menu {width: 60%;margin: 15px 0 0 0;}
.footer-logo {width: 40%}
.footer-link {margin: 30px 0 0px;}
.footer-link li{
    border-right: solid 1px #404040;
    line-height: 1;
}
.footer-link li:last-child{
    border-right: none;
}
.footer-link li a{
    padding: 0 10px;
    font-size: 12px;
    color: #404040;
    line-height: 1;
}
.copyright {
    margin-top: 40px;
    font-size: 12px;
    text-align: center;
}

/*メインビジュアル*/
.main-v {
    background: url(images/main-pc-bg.jpg)no-repeat;
    background-size: cover;
    height: 610px;
    padding: 50px 0 0;
}
.page .main-v-page h2, .column .main-v-page h2{margin-top: 25px;}
.main-area {width: 830px;}

.main-tx {
    /* font-size: 18px;
    color: #fff;
    line-height: 1.3;
    position: relative;
    z-index: 1;
    background: rgba(255, 255, 255, 0.73);
    color: #1797A8;
    position: relative;
    top: 100px;
    left: 25px;
    display: inline-block;
    border-radius: 10px;
    padding: 50px 25px 25px; */
    }
.main-v h2 {
    /* font-size: 25px;
    margin: 20px 0 30px;
    line-height: 1.5;
    background: #06A8BE;
    display: inline-block;
    border-radius: 10px;
    padding: 25px;
    color: #fff;
    position: absolute;
    top: -130px;
    left: -25px; */
}
.tx1 {font-size: 39px;}
.tx2 {font-size: 32px;}
.tx3 {font-size: 22px;margin-bottom: 10px;
    line-height: 1.5;}
.tx4 {font-size: 14px;font-weight: bold;margin-bottom: 5px;}
.tx5 {font-size: 27px;font-weight: bold;margin-bottom: 5px;}
.tx6 {font-size: 12px;}
.tx-kome {    
    display: inline-block;
    font-size: 14px;
    position: relative;
    top: -10px;
    left: 3px;
}

/*トップページ*/
#info {
    margin: 50px 0;
}
.info-area {
    padding: 30px;
    border: solid 2px #06A8BE;
    border-radius: 10px;
}
.info-area .img {
    width: 26%;
}
.info-area .tx {
    width: 70%;
    color: #404040;
}
.info-area .tx h4{
    color: #1797A8;
    font-size: 18px;
    border-bottom: solid 1px #1797A8;
    padding-bottom: 5px;
    margin-bottom: 20px;
}
.info-area .info-link{
    color: #1797A8;
    text-align: right;
    margin-top: 20px;
    text-decoration: underline;
}
.top-book {
    border: solid 1px #d2d2d2;
    padding: 30px 100px;
    margin: 80px 0 0;
}
.top-book h3{
    text-align: center;
    font-weight: normal;
}
.book-link {
    text-align: center;
}
.book-link a{
    text-decoration: underline;
}
#top-nayami {
    background: url(images/nayami-bg.png)no-repeat;
    margin: 20px 0 0;
    padding: 40px 0 70px;
    background-size: cover;
}
#top-nayami h3{
    text-align: center;
    margin-bottom: 30px;
}
#top-nayami .item {
    width: 49%;
}
#top-nayami .item h4{
    text-align: center;
    font-size: 18px;
    display: inline-block;
    padding: 7px 0px;
    color: #fff;
    border-radius: 10px 10px 0 0 ;
    width: 250px;
}
#top-nayami .item:first-child h4{
    background: #06A8BE;
    
}
#top-nayami .item:last-child h4{
    background: #263959;
}
#top-nayami .item-list {
    background: #fff;
    padding: 30px;
    border: solid 1px #06A8BE;
}
#top-nayami .item:last-child .item-list {
    border: solid 1px #263959;
}

#top-nayami .item-list li {
    color: #1797A8;
    line-height: 1.3;
    background: url(images/icon-bubble.png)no-repeat;
    background-size: 34px;
    padding: 0px 0 0 55px;
    background-position: 0px 0px;
    margin-bottom: 20px;
    min-height: 25px;
    font-size: 18px;
}
#top-nayami .item:last-child .item-list li{
    color: #263959;
}
#top-nayami .item-list li:last-child {
    margin-bottom: 0;
}
#top-greet {
    margin: 70px 0 50px;
}
#top-greet h3{
    text-align: center;
}
#top-greet .img {
    width: 33.5%;
    position: relative;
    padding-left: 30px;
}
#top-greet .img::after {
    content: "";
    display: block;
    width: 100%;
    height: 230px;
    background: #EFFAFB;
    border-radius: 15px;
    position: absolute;
    top: 50px;
    z-index: 10;
    left: 50px;
}
#top-greet .img img{
    width: 100%;
    position: relative;
    z-index: 100;
}
#top-greet .tx{
    width: 58%;
    padding-right: 30px;
}
#top-about-souzoku {
    background: rgba(6, 168, 190, 0.06);
    padding: 50px 0;
    margin: 50px 0 0;
}
.about-souzoku-title{
    max-width: 800px;
    margin: 0 auto;
}
#top-about-souzoku .fbox .img{
    position: relative;
    top: -100px;
    margin-bottom: -100px;
}
#top-about-souzoku .fbox .img img{
    width: 100%;
}
#top-about-souzoku .fbox .img:first-child{
    width: 117px;
}
#top-about-souzoku .fbox .img:last-child{
    width: 100px;
}
.top-about-souzoku-tx {
    padding: 0 80px;
    margin: 30px 0 80px;
}
#top-about-souzoku h4 {
    width: 340px;
    text-align: center;
    color: #fff;
    background: #1A3E7B;
    border-radius: 15px;
    font-size: 24px;
    padding: 2px 0;
    margin: -25px auto 35px;
}
#top-about-souzoku .item {
    width: 48%;
    background: #fff;
    border-radius: 9px;
    padding: 0 30px 30px;
}
#top-about-souzoku .arrow {
    position: absolute;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
    top: 25px;
    left: -15px;
}
#top-about-souzoku li {
    border-bottom: solid 1px #E2E2E2;
    position: relative;
}
#top-about-souzoku li a {
    display: block;
    padding: 15px 5px 15px 25px;
    color: #263959;
    font-size: 14px;
    line-height: 1.3;
}
.souzoku-link {
    text-align: center;
    margin: 30px 0 0;
    text-decoration: underline;
    border: solid 1px #1797A8;
    width: 80%;
    margin: 30px auto 0;
}
.souzoku-link a{
    display: block;
    padding: 10px 0 12px;
}
#top-jirei {
    padding: 130px 0;
}
#top-jirei .title-area {
    text-align: center;
    position: relative;
}
#top-jirei h3 {
    display: inline-block;
    margin-bottom: 70px;
}
.title-area .img {
    position: absolute;
    right: 0;
    top: -100px;
    width: 211px;
}
.title-area .img img{width: 100%;}
#top-jirei h4 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 13px;
}
.jirei-content-area {
    border-radius: 10px;
    box-shadow: 2px 2px 5px #ddd;
    padding: 30px;
    margin-top: 30px;
    border: 1px #1797a8 solid;
}
.jirei-content-area h5{
    color: #1797A8;
    font-weight: normal;
    font-size: 18px;
}
.jirei-content-area h5 span{
    background: #1797A8;
    color: #fff;
    font-size: 16px;
    padding: 3px 15px;
    margin-right: 15px;
}

#top-jirei .tx-bold {
    color: #1797A8;
    font-weight: bold;
    margin: 15px 0;
    font-size: 18px;
}
.kaiketu-area {
    background: #FCF8F7;
    border: solid 1px #553629;
    padding: 20px;
    margin: -20px 0 0;
}
.kaiketu {
    width: 282px;
    background: url(images/arrow-jirei.png)no-repeat;
    background-size: 100%;
    text-align: center;
    height: 49px;
    color: #fff;
    font-size: 16px;
    padding: 3px 0 0;
    margin: 0 auto 10px;
    position: relative;
}

#top-news-area {
    padding: 50px 0;
    background: #effafb;
}
#top-news-area h3{
    text-align: center;
    font-weight: normal;
}
.news-list .item {
    width: calc(94% / 4);
    box-shadow: 1px 1px 3px #ccc ;
    background: #fff;
    margin-right: 2%;
}
.news-list .item:last-child {
    margin-right:0;
}
.news-list h4 {
    font-size: 14px;
    line-height: 1.3;
    margin-bottom: 10px;
    color: #404040;
}
.news-list .tx {
    padding: 10px;
}
.news-more {
    font-size: 14px;
    border:solid 1px #06A8BE;
    background: #fff;
    padding: 10px;
    width: 250px;
    text-align: center;
    margin: 50px auto 0;
}
time {font-size: 12px;}
.news-cat {
    background: #06A8BE;
    color: #fff;
    font-size: 10px;
    padding: 2px 15px;
    margin: 0 5px 0 0;
}
.title-area {font-size: 14px;padding: 2px 0 0;}
.title-area a{color: #404040;}
.title-area h4{font-weight: normal;}

#top-about-darwin {
    position: relative;
    margin: 100px 0 150px;
}
#top-about-darwin .img{
    width: 49%;
    position: absolute;
    left: 0;
}
#top-about-darwin .img::after{
    content: "";
    display: block;
    width: 100%;
    height: 350px;
    background: #EFFAFB;
    position: absolute;
    top: 50px;
    z-index: 10;
    left: 30px;
}
#top-about-darwin .img img{
    width: 100%;
    position: relative;
    left: 0;
    height: 373px;
    object-fit: cover;
    z-index: 100;
}
#top-about-darwin .tx{
    width: 43%;
    margin-left: 55%;
}
#top-about-darwin h3{
    font-weight: normal;
}
#top-about-darwin .tx a{
    display: block;
    border-bottom: solid 1px #06A8BE;
    margin-top: 10px;
    font-size: 14px;
    padding: 3px 0;
}
#top-about-darwin .link-area {
    margin-top: 30px;
}

#cta {
    background: url(images/ctn-bg.png)no-repeat;
    padding: 40px 0;
    background-size: cover;
}
.cta-area {
    width: 540px;
    background: rgba(255, 255, 255, 0.73);
    padding: 30px;
    font-size: 14px;
    border-radius: 11px;
}
.cta-area h3 {font-size: 27px;color: #263959;}
.cta-area h3 span{font-size: 14px;display: block;color: #1797A8;}
.cta-area h3 span.cta-kome {
    display: inline-block;
    font-size: 14px;
    position: relative;
    top: -10px;
    left: 3px;
    color: #263959;
}
.tel-kome {
    font-size: 12px;
    margin-bottom: 30px;
}
.cta-area .item {
    width: 49%;
}
.cta-area .item:first-child {
    font-size: 12px;
}
.cta-area .item:first-child a{
    font-size: 29px;
}
.cta-area .item:first-child a img{
    width: 24px;
    position: relative;
    top: -12px;
    margin-right: 5px;
}
.cta-area .item:last-child {
}
.cta-area .item:last-child a{
    color: #fff;
    display: block;
    font-size: 16px;
    text-align: center;
    padding: 22px 0;
    border-radius: 5px;
    background: #1797a8; /* Old browsers */
    background: -moz-linear-gradient(top, #1797a8 0%, #03545f 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #1797a8 0%,#03545f 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #1797a8 0%,#03545f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1797a8', endColorstr='#03545f',GradientType=0 );
}

/*下層ページ*/
.main-v-page {
    background-image: url(images/main-seminar-book-bg.png);
}
.column-l {}
.column-l h2, .voice-single h2{
    border-top: solid 1px #1797A8;
    border-bottom: solid 1px #1797A8;
    padding: 20px 0 20px;
    font-weight: normal;
}
.column-l h3, .voice-single h3{
    border-left: solid 8px #1797A8;
    color: #fff;
    padding: 7px 15px 5px;
    font-size: 18px;
    font-weight: normal;
    background: transparent linear-gradient(180deg, #1A3E7B 0%, #222F4D 100%) 0% 0% no-repeat padding-box;
}
.column-l h4, .voice-single h4{
    border-left: solid 3px #1797A8;
    font-size: 17px;
    font-weight: normal;
    padding-left: 10px;
    line-height: 1.5;
    margin-bottom: 20px;
}
.column-l h5 {
    font-size: 16px;
    color: #263959;
     margin-bottom: 0;
}
.column-l ul.list{margin: 30px 0;}
.column-l .list li{
    padding: 0px 0 0px 15px;
    position: relative;
}
.column-l .list li::before{
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #1797A8;
    position: absolute;
    top: 9px;
    left: 0;
}
.column-r {
    width: 250px;
}
.side-link {
    margin-bottom: 30px;
}
.side-more {
    text-align: center;
    text-decoration: underline;
    font-size: 14px;
}
.column-r h3{
    background: #263959;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: normal;
    padding: 10px 0;
    margin-bottom: 10px;
    background: transparent linear-gradient(180deg, #1A3E7B 0%, #222F4D 100%) 0% 0% no-repeat padding-box;
}
.column-r li{
    border-bottom: solid 1px #E2E2E2;
    position: relative;
}
.column-r li li{
    border-bottom: none;
    position: relative;
}
.column-r li li:last-child{
    margin-bottom: 10px;
}
.column-r li a{
    display: block;
    padding: 10px 5px 10px 25px;
    color: #263959;
    font-size: 14px;
    line-height: 1.3;
}
.column-r li li a{
    padding: 5px 5px 5px 45px;
}
.column-r li li::before{
    content: "";
    display: block;
    width: 10px;
    height: 1px;
    background: #06A8BE;
    position: absolute;
    top: 14px;
    left: 25px;
}
.side-column-list {
    border-bottom: solid 1px #E2E2E2;
    padding-bottom: 10px;
    margin-bottom: 15px;
}
.side-column-list .img{
    width: 45%;
}
.side-column-list .tx{
    width: 50%;
    font-size: 12px;
    color: #404040;
}
#ez-toc-container {
    width: 100%!important;
    border-radius: 0!important;
    background: #F7F7F7!important;
    border: none!important;
    box-shadow: 3px 3px 3px #eee!important;
    padding: 0!important;
    margin-bottom: 50px!important;
}
.ez-toc-title {
    text-align: center!important;
    font-size: 15px!important;
    color: #1797A8!important;
    font-weight: bold!important;
    padding: 13px 0 10px!important;
    background: #EDEDED!important;
}
#ez-toc-container a {
    color: #1797A8!important;
}
.ez-toc-heading-level-2 {list-style: none;}
.ez-toc-title-toggle {
    display: none!important;
}
#ez-toc-container nav {
    padding: 30px!important;
}
div#ez-toc-container ul li {
    font-size: 18px!important;
    margin-bottom: 5px;
}
div#ez-toc-container ul li ul li{
    font-size: 16px!important;
    margin-bottom: 3px;
}
#ez-toc-container ul ul, .ez-toc div.ez-toc-widget-container ul ul {
    margin-left: 1.7em;
}
.ez-toc-list-level-3 {margin-top: 4px;}
blockquote {
    border: solid 1px #C76138;
    padding: 30px;
    margin: 50px 0 60px;
    background: url(images/icon-blockquote.png)no-repeat;
    background-size: 45px;
    background-position: 20px 0px;
}
blockquote .bq-body {
	display: none;
    margin-bottom: 10px;
	color: #553629;		
	font-size: 90%;
}
blockquote p {
    margin-bottom: 10px;
    color: #553629;		
     font-size: 90%;
}
blockquote .toggle-bq {
	display: block;
	text-align: right;
	cursor: pointer;
    color: #cc6e49;
    font-size: 90%;
    text-decoration: underline;
}
.column-l blockquote h3{
    font-size: 16px;
    color: #C76138;
    background: none;
    border: none;
    padding: 0 0 0 40px;
}
.column-l th {
    width: 50%;
    background: #eee;
}
.column-l td {
    width: 50%;
    vertical-align: top;
}
.column-l .column3 th, .column-l .column3 td {
    width: calc(87% / 2);
    vertical-align: top;
}
.column-l .column4 th, .column-l .column4 td {
    width: calc(87% / 3);
    vertical-align: top;
}
.column-l .column3 th:first-child, .column-l .column3 td:first-child, .column-l .column4 th:first-child, .column-l .column4 td:first-child {
    width: 13%;
}
.profile h3{
    background: url(images/icon-title.png)no-repeat!important;
    background-size: 16px!important;
    border: none;
    color: #1797A8;
    background-position-y: 15px!important;
    padding-left: 20px!important;
}
.pro-area {
    border: solid 1px #E2E2E2;
    padding: 30px;
}
.pro-area p{
    text-indent: 0;
}
.pro-img {
    margin-right: 5%;
    width: 30%;
}
.pro-tx {
    width: 65%;
}
.pro-tx p{
    margin-bottom: 5px;
    line-height: 1.5;
    font-size: 12px;
}
.pro-tx strong{
    font-size: 16px;
}
.pro-tx a{
    margin-left: auto;
    display: block;
    width: 180px;
}
.box-l {
    padding: 3%;
    font-size: 90%;
    margin-bottom: 40px;
    background: #f2f9fb;
}	

.box-column {
    background: #FCF8F7;
    padding: 3%;
    margin-bottom: 40px;
    font-size: 90%;
}

.box-column h3 {
    background: none;
    border-left: none;
    color: #C76138;
    padding: 1px 0 0px;
    margin: 0 0 15px 0;
    font-size:16px;
}

.box-column p {
    margin-bottom: 10px;
	color: #553629;
}
.main-v-page {
    height: 155px;
    background-size: cover;
    background-position: right;
    padding: 30px 0 0;
}
.main-v-page h2{
    font-size: 26px;
    font-weight: normal;
    margin-bottom: 5px;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
        -1px 1px 0 #FFF, 1px -1px 0 #FFF,
        0px 1px 0 #FFF,  0-1px 0 #FFF,
        -1px 0 0 #FFF, 1px 0 0 #FFF;
}

/*COLUMN*/
.column .main-v-page {
    background-image: url(images/main-trust-bg.png);
}
.cat-menu-area {
    margin: 50px 0;
}
.cat-menu-title {
    background: #1797A8;
    color: #fff;
    font-size: 14px;
    padding: 2px 10px 2px;
}
.cat-menu {
    padding: 0px 30px 0;
    border-right: 1px solid #1797A8;
}
.column-list .item {
    width: 23.5%;
    box-shadow: 2px 2px 3px #ddd;
    margin-right: 2%;
}
.column-list .item img{
    height: 173px;
    object-fit: cover;
    font-family: "object-fit: cover;";
}
.column-list .item:nth-child(4n) {
    margin-right: 0;
}
.column-list .item h4{
    font-size: 14px;
    border: none;
    padding: 0;
    line-height: 1.3;
    margin-top: 10px;
}
.column-list .item .tx {
    padding: 0 5px 5px;
}
.column-list .item .tx h4{
    color: #404040;
    margin-bottom: 10px;
    height: 32px;
}
.column-list .item .tx .cat{
    background: #1797A8;
    color: #fff;
    text-align: center;
    font-size: 10px;
    padding: 0 5px;
    width: 60px;
    display: inline-block;
}
.column-list .item .tx time{
    font-size: 10px;
    margin-left: 10px;
}
.column-l h1 {
    font-size: 26px;
    color: #1797A8;
}
.cat-area {
    font-size: 14px;
    margin: 30px 0;
    color: #1797A8;
}
.cat-area .cat{
    background: #1797A8;
    color: #fff;
    display: inline-block;
    padding: 0px 15px;
    margin-right: 10px;
}
.single-img {
    width: 90%;
    margin: 0 auto 50px;
}
.single-img img{
    width: 100%;
    height: auto;
}
.content-area iframe {
    margin: 0 auto;
    display: block;
}

/*講演・著書*/

.seminar-area {
    margin: 50px 0 100px;
}
.column-l .seminar-area ul.list {
    margin: 10px 0 25px;
}
.column-l .seminar-area ul.list a{
    color: #404040;
    text-decoration: underline;
}
.year {
    font-size: 20px;
    color: #1797A8;
    position: relative;
    padding-left: 55px;
}
.year::before {
    content: "";
    display: block;
    height: 1px;
    width: 45px;
    background: #1797A8;
    position: absolute;
    top: 18px;
    left: 0;
}
.book {
    margin-top: 50px;
}
.book .item {
    width: 48%;
    margin-bottom: 30px;
}
.book-img {
    width: 34%;
}
.book-tx {
    width: 66%;
    font-size: 14px;
    color: #404040;
    line-height: 1.5;
    word-wrap: break-word;
}
.book-tx h4{
    border: none;
    font-size: 16px;
    padding: 0;
    margin-bottom: 10px;
}

/*民事信託（家族信託）*/
.trust .main-v-page {
    background-image: url(images/main-trust-bg.png);
}
.souzoku .main-v-page {
    background-image: url(images/main-souzoku-bg.png);
}
.cat-name {
    background: #263959;
    display: inline-block;
    color: #fff;
    padding: 4px 15px;
    font-size: 12px;
}
.parent-title {
    border: solid 1px #06A8BE;
    padding: 10px 15px;
    font-size: 20px;
    font-weight: bold;
    margin-top: 20px;
    color: #1797A8;
    position: relative;
}
.parent-title .arrow{
    top: 24px;
    right: 30px;
}
.parent-title a{
    display: block;
    font-size: 16px;
    font-weight: normal;
}
.child-area {
    background: #f2f9fb;
    padding: 30px;
}
.child-title a {
    font-size: 15px;
    font-weight: normal;
}
.child-title {
    border: solid 1px #06A8BE;
    padding: 5px 15px;
    font-size: 18px;
    font-weight: bold;
    border-radius: 5px;
    margin-bottom: 15px;
    background: #fff;
    position: relative;
}
.child-title .arrow{
    right: 30px;
}
/*感謝の声・実績*/

.voice-list {
    border: solid 1px #d2d2d2;
    position: relative;
    background: #fff;
    margin: 0 0 15px;
    line-height: 1.5;
}
.voice-list a {
    color: #06A8BE;
    display: block;
    padding: 25px;
    display: flex;
    align-items: flex-start;
}
.voice-list:after {
    content: "";
    display: block;
    width: 13px;
    height: 21px;
    background: url(/wp-content/themes/souzoku/images/icon-arrow-right.png)no-repeat;
    background-size: 100%;
    position: absolute;
    right: 9px;
    top: 40%;
}
.cat {
    color: #06A8BE;
    display: inline-block;
    font-size: 11px;
    padding: 3px 0px;
    margin-right: 10px;
    border: solid 1px #06A8BE;
    width: 110px;
    text-align: center;
}
.btn-more {
    background: #fff;
    border: solid 1px #1797A8;
    border-radius: 50px;
    box-shadow: 0 5px 10px #595a5a;
    width: 430px;
    font-size: 16px;
    margin: 30px auto 0;
    text-align: center;
}
.btn-more a {
    display: block;
    padding: 20px;
    color: #1797A8;
}
.btn-more:before {
    content: "";
    display: block;
    width: 21px;
    height: 6px;
    background: url(/wp-content/themes/souzoku/images/icon-arrow.png)no-repeat;
    background-size: 21px;
    position: relative;
    top: 29px;
    left: 30px;
    margin-bottom: -6px;
}

/*contact*/
.cantact-area {padding: 0 150px 100px;background: #fff;}
.cantact-area {margin-top: 50px;}
.cantact-area h3 {
    text-align: center;
    font-size: 18px;
    margin-top: -23px;
}
.cantact-area h3 span {
    font-size: 50px;
    color:#002b8a;
    line-height: 1.2;
    letter-spacing: 6px;
}
.contact-tx {padding: 0 50px;margin-bottom: 80px;}

input[type="text"],input[type="email"],textarea {width: 100%;font-size: 16px;border: solid 1px #ccc;line-height: 1.5;}
.form-tx {text-align: center;margin-bottom: 50px;}
.f-title {
    border-bottom: solid 1px #000;
    width: 32%;
    padding: 35px 10px 30px;
}
.f-input {
    border-bottom: solid 1px #ccc;
    width: 68%;
    padding: 30px 10px 30px;
}
.doui {
    padding: 20px;
    width: 100%;
    margin: 20px auto;
    text-align: center;
}
.doui p {
    text-align: center;
}
.privacy-link {margin-top: 10px}
.privacy-link a{text-decoration: underline;}
.send-btn {
    font-size: 18px;
    box-shadow: -1px 1px 5px #ccc;
    width: 250px;
    margin: 40px auto 0;
    border-radius: 5px;
    padding: 15px;
    cursor: pointer;
    text-align: center;
    background: #1797a8;
background: -moz-linear-gradient(top, #1797a8 0%, #03545f 100%);
background: -webkit-linear-gradient(top, #1797a8 0%,#03545f 100%);
background: linear-gradient(to bottom, #1797a8 0%,#03545f 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1797a8', endColorstr='#03545f',GradientType=0 );
}
.send-btn input{background: none;border: 0;color: #fff;}
.send-btn a:hover{opacity: 1}
.send-btn:hover {opacity: 0.7}
.hissu:after {
    content: "必須";
    background: #e5004f;
    color: #fff;
    float: right;
    font-size: 10px;
    padding: 2px 9px 3px;
    border-radius: 5px;
    margin-right: 20%;
}
.doui span.mwform-checkbox-field:before {
    content: "必須";
    background: #e5004f;
    color: #fff;
    font-size: 10px;
    padding: 2px 9px 3px;
    border-radius: 5px;
    margin-right: 1%;
    position: relative;
    top: -1px;
}
.ninni:after {
    content: "任意";
    background: #707070;
    color: #fff;
    float: right;
    font-size: 10px;
    padding: 2px 9px 3px;
    border-radius: 5px;
    margin-right: 20%;
}

.fukidashi {
    margin: 40px 0;
}
.fukidashi .img{
    width: 8%;
    font-size: 11px;
    text-align: center;
}
.fukidashi .img img{
    margin-bottom: 5px;
}
.fukidashi .tx{
    width: 88%;
    background: #FAFAFA;
    border-radius: 16px;
    padding: 20px;
    position: relative;
    margin-left: 4%;
}
.fukidashi .tx::before {
    display: block;
    content: "";
    width: 28px;
    height: 28px;
    background: url(./images/fukidashi.png)no-repeat;
    position: absolute;
    top: 40px;
    left: -28px;
}
@media (max-width: 480px) {
    .fukidashi {
        margin: 5vw 0;
        padding: 0;
    }
    .fukidashi .img {
        font-size: 2.6vw;
        width: 18%;
    }
    .fukidashi .tx {
        width: 76%;
        padding: 3vw;
        margin-left: 6%;
    }
    .fukidashi .tx::before {
        width: 8vw;
        height: 8vw;
        top: 12vw;
        left: -6vw;
    }
}


@media (max-width: 1350px) {
    .main-v {    
        height: 46vw;
    }
}
@media (max-width: 1024px) {
    .pc {display: none}
    .sp {display: block}
    .scroll-prevent {
        position: fixed;
        z-index: -1;
        width: 100%;
        height: 100%;
    }
    h3 {
        font-size: 2.3vw;
    }
    .container {padding: 0 2vw;}
    .content-single {width: 100%;margin-right: 0;margin-bottom: 40px;}
    
    header {
        position: fixed;
        z-index: 1000;
        width: 100%;
        background: #fff;
        top:0;
        transition: .5s;
        height: 81px;
    }
    header.hide{
        transform: translateY(-100%);
    }
    .logo-area {width: 100%;padding: 20px 0 10px 0;}
    .head-cta {display: none;}
    .sp-menu-cta {display: block;}
    .sp-menu-cta .head-tel{
        background: #fff;
        border-radius: 5px;
        margin: 30px 0 20px;
        padding: 10px 0 5px;
        text-align: center;
        line-height: 1;
    }
    .sp-menu-cta .head-tel a {
        font-size: 12px;
        color: #404040;
    }
    .sp-menu-cta .head-tel a span{
        font-size: 29px;
        display: block;
        color: #06A8BE;
    }
    .sp-menu-cta .contact {
        border: solid 2px #fff;
    }
    /*ナビメニュー*/
    .nav-area {
        margin: 0;
        background: none;
        padding: 0;
    }
    .off::after {
        display: none!important;
    }
    
    .sp-btn {
        display: block;
        cursor: pointer;
        width: 58px;
        height: 58px;
        cursor: pointer;
        z-index: 10100;
        text-align: center;
        padding-top: 14px;
        position: fixed;
        right: 15px;
        top:13px;
        background: #eee;
    }
    .hbmenu {
        position: relative;
        width: 19px;
        height: 14px;
        cursor: pointer;
    }
    .hbmenu, .hbmenu span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }
    .hbmenu span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #06A8BE;
    }
    .hbmenu span:nth-of-type(1) {
        top: 3px;
    }
    .hbmenu span:nth-of-type(2) {
        top: 15px;
    }
    .hbmenu span:nth-of-type(3) {
        bottom: 4px;
    }
        
    .active .hbmenu span:nth-of-type(1) {
        background-color: #234d86;
        top: -5px;
        animation: active-menu-bar04-01 .75s forwards;
    }
    @keyframes active-menu-bar04-01 {
        0% {
            transform: translateY(0) rotate(0);
        }
        50% {
            transform: translateY(15px) rotate(0);
        }
        100% {
            transform: translateY(14px) rotate(45deg);
        }
    }
    .active .hbmenu span:nth-of-type(2) {
        background-color: #234d86;
        opacity: 0;
        animation: none;
    }
    .active .hbmenu span:nth-of-type(3) {
        background-color: #234d86;
        bottom: -5px;
        animation: active-menu-bar04-03 .75s forwards;
    }
    @keyframes active-menu-bar04-03 {
        0% {
            transform: translateY(0) rotate(0);
        }
        50% {
            transform: translateY(-7px) rotate(0);
        }
        100% {
            transform: translateY(-9px) rotate(-45deg);
        }
    }
    
    .nav-area nav {
        width: 100%;
        height: 100%;
        transition: all 0.2s;
        transform: translate(100%);
        position: fixed;
        top: 0;
        right: 0;
        z-index: 900;
        background: #06A8BE;
        padding: 15vh 11vw;
        overflow: scroll;
    }
    nav .fbox{
        display: block;
    }
    .navbar li {border-bottom: solid 1px #fff;}
    .navbar li a{
        color: #fff;
        font-size: 16px;
        padding: 10px 0 10px 5px;
    }
    .navbar li:hover .sub-menu {display: none;}
    .sub-menu {position: static;padding: 0 0 20px;height: auto;background: none;width: auto;}
    .sub-menu li {border: none}
    .sub-menu li::before {display: none}
    
    /*  メニューアクティブ時  */
    nav.open {transform: translate(0);}
    .on {animation: show 0.5s linear 0s;}
     
    @keyframes show{
        from{
            opacity: 0;
        }
        to{
            opacity: 1;
        }
    }
    .accordion_icon,
    .accordion_icon span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
    }
    .accordion_icon {
        position: relative;
        width: 37px;
        height: 37px;
        float: right;
        margin-right: 0;
        border: solid 1px #000;
        top: -46px;
    }
    .accordion_icon span {
        position: absolute;
        left: 6px;
        width: 64%;
        height: 2px;
        background-color: #000;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -ms-border-radius: 4px;
        -moz-border-radius: 4px;
        -o-border-radius: 4px;
    }
    .accordion_icon span:nth-of-type(1) {
        top: 9px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }
    .accordion_icon span:nth-of-type(2) {
        top: 17px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }
    .accordion_icon span:nth-of-type(3) {
        top: 25px;
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
    }
    /*＋、－切り替え*/
    .accordion_icon.active span:nth-of-type(2) {
        display:none;
    }
    .accordion_icon.active span:nth-of-type(1) {
        width: 71%;
        top: 17px;
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        left: 5px;
    }
    .accordion_icon.active span:nth-of-type(3) {
        width: 71%;
        top: 17px;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        left: 5px;
    }
    
    .navbar li:hover .sub-menu {
        display: none;
        animation: none;
        animation: none;
    }

    /*トップページ*/
    .main-v {
        height: 43vw;
        padding: 3vw 0 0;
        overflow: hidden;
        margin-top: 81px;
    }
    .main-v-area {max-width: 100%;}
    .main-tx {
        /* font-size: 1.8vw;
        margin-right: 3vw;
        margin-left: 4vw;
        left: 0;
        padding: 5vw 2.5vw 2vw;
        top: 11vw; */
    }
    .tx1 {
        font-size: 4vw;
    }
    .tx2 {
        font-size: 3.3vw;
    }
    .main-v h2 {
        /* padding: 2vw;
        font-size: 2.6vw;
        top: -13vw; */
    }
    .tx3 {
        font-size: 2.1vw;
    }
    .tx4 {
        font-size: 1.4vw;
    }
    .tx5 {
        font-size: 2.6vw;
    }
    .tx6 {
        font-size: 1.2vw;
    }
    .info-area {
        padding: 3vw;
    }
    #top-nayami .item {
        width: 100%;
        margin-bottom: 30px;
    }
    #top-nayami .item:last-child {
        margin-bottom: 0px;
    }
    #top-greet .img {
        width: 35.5%;
        padding-left: 0;
    }
    #top-greet .img::after {
        height: 23vw;
        left: 5vw;
    }
    .top-book {
        padding: 3vw 2vw;
        margin: 5vw 0 0;
    }
    #top-about-souzoku .fbox .img {
        top: -10vw;
        margin-bottom: -10vw;
    }
    #top-about-souzoku .fbox .img:first-child {
        width: 11.5vw;
        left: 1vw;
    }
    #top-about-souzoku .fbox .img:last-child {
        width: 9.8vw;
        right: 1vw;
    }
    #top-about-souzoku h4 {
        width: 90%;
        margin: -2vw auto 35px;
        font-size: 2.2vw;
    }
    .title-area .img {
        top: -9vw;
        width: 20.7vw;
    }
    #top-about-darwin .img {
        width: 100%;
        position: static;
        left: 0;
    }
    #top-about-darwin .tx {
        width: 100%;
        margin-left: 0;
        margin-top: 50px;
    }

    /*下層ページ*/
    .main-v-page {
        margin-top: 81px;
    }
    .content-area {
        padding: 50px 0;
    }
    .con-s {
        width: 90%;
    }
    .column-r {
        width: 90%;
        margin: 50px auto 0;
    }
    .column-list .item img{
        height: 15vw;
    }
    .column-list .item .tx h4 {
        height: 55px;
    }
    .single-page {
        margin-top: 80px;
    }
    /*サイドエリア*/
    .side-column-list-area {margin-top: 20px;}
    .side-column-list {
        width: 48%;
        margin-right: 4%;
    }
    .side-column-list:nth-child(2n) {
        margin-right: 0;
    }
    .side-column-list:nth-child(5) {
        display: none;
    }

    
    
    
    
}



@media (max-width: 835px) {
    
    .cta-area {
        width: 100%;
    }
    #top-about-souzoku .fbox .img:first-child {
        left: 7vw;
    }
    #top-about-souzoku .fbox .img:last-child {
        right: 7vw;
    }
}

@media (max-width: 480px) {
    .sp-only {display: block;}
    body {font-size: 14px}
    .tb {display:none;}
    .spbr {display: none}
    h2 {font-size: 4vw}
    h3 {font-size: 4.2vw}
    .single-page {
        margin-top: 67px;
    }
    .container {padding: 0 4vw;}
    .content-area .container {padding: 0;}
    .con-s {
        width: 100%;
        padding: 0;
    }
    .column-r {width: 100%;}
    header {height: 67px;}
    .logo-area {padding: 19px 0px 5px;}
    .logo-area img {width: 25vw;}
    .logo-tx {font-size: 10px;left: 10px;top: -1px;font-size: 3.2vw;}
    .logo-tx span {font-size: 9px;font-size: 2.6vw;}
    .sp-btn {
        width: 48px;
        height: 48px;
        padding-top: 11px;
        right: 10px;
        top: 10px;
    }
    .lightbox .lb-image {border: 10px solid white;}
    /*トップ*/
    .main-v {
        background: none;
        background-size: cover;
        height: 150vw;
        padding: 0;
        margin-top: 68px;
    }
    .main-v h2 {
        /* padding: 4vw;
        font-size: 5vw;
        top: -21vw; */
    }
    .main-v-area {
        padding: 0;
    }
    .main-tx {
        /* font-size: 2.8vw;
        margin-right: 3vw;
        margin-left: 7vw;
        padding: 16vw 5vw 5vw;
        top: 6vw; */
    }
    .tx1 {
        font-size: 8vw;
    }
    .tx2 {
        font-size: 6vw;
    }
    .tx3 {
        font-size: 5.1vw;
    }
    .tx4 {
        font-size: 3vw;
    }
    .tx5 {
        font-size: 5.6vw;
    }
    .tx6 {
        font-size: 2.5vw;
        }
    
    .info-area .img {
        width: 100%;
        margin-bottom: 5vw;
    }
    .info-area .tx {
        width: 100%;
    }
    .info-area .tx h4 {
        font-size: 4.2vw;
        line-height: 1.3;
    }
    #top-nayami .item h4 {
        padding: 3px 0px 2px;
        width: 50vw;
        font-size: 4vw;
    }
    #top-nayami .item-list {
        padding: 5vw;
    }
    #top-nayami .item-list li {
        background-size: 6vw;
        padding: 0px 0 0 9vw;
        background-position: 0px 1px;
        margin-bottom: 3vw;
        font-size: 3.5vw;
    }
    #top-greet {
        margin: 50px 0 50px;
    }
    #top-greet .img {
        width: 94%;
    }
    #top-greet .img::after {
        height: 58vw;
        top: 10vw;
    }
    #top-greet .tx {
        width: 100%;
        padding-right: 0px;
        margin-top: 50px;
    }
    .top-book {
        padding: 7vw 3vw 7vw 0;
        margin: 5vw 0 0;
    }
    .top-book h3 {
        font-size: 4vw;
    }
    .top-book .book {
        margin-top: 40px;
    }
    .top-book .book-tx h4 {
        font-size: 14px;
    }
    #top-about-souzoku .fbox .img:first-child {
        left: 0vw;
    }
    #top-about-souzoku .fbox .img:last-child {
        right: 0vw;
    }
    .top-about-souzoku-tx {
        padding: 0 0px;
    }
    #top-about-souzoku .item {
        width: 100%;
        padding: 0 4vw 4vw;
    }
    #top-about-souzoku .item:first-child {
        margin-bottom: 50px;
    }
    #top-about-souzoku h4 {
        margin: -4vw auto 5vw;
        font-size: 4.2vw;
    }
    .souzoku-link {
        width: 95%;
        margin: 30px auto;
    }
    #top-jirei {
        padding: 15vw 0;
    }
    .title-area .img {
        top: -6vw;
    }
    #top-jirei h3 {
        margin-bottom: 8vw;
    }
    #top-jirei h4 {
        font-size: 3.8vw;
        line-height: 1.5;
    }
    .jirei-content-area {
        padding: 4vw;
    }
    .jirei-content-area h5 {
        font-size: 4.3vw;
        line-height: 1.3;
    }
    .jirei-content-area h5 span {
        margin-right: 0;
        display: block;
        text-align: center;
        margin-bottom: 10px;
        font-size: 3.8vw;
    }
    .kaiketu-area {
        padding: 3vw;
        margin: -5vw 0 0;
    }
    .news-list .item {
        width: 48%;
        margin-right: 4%;
        margin-bottom: 4%;
    }
    .news-list .item:nth-child(2n) {
        margin-right: 0;
    }
    #top-about-darwin .img img {
        height: auto;
    }
    #top-about-darwin .img::after {
        width: 92%;
        height: 41vw;
        top: 5vw;
        left: 8%;
    }
    /*下層ページ*/
    .main-v-page {
        height: 130px;
        margin-top: 67px;
        background-position-x: 730px;
    }
    .content-area {
        padding: 30px 4vw;
    }
    .main-v-page h2 {
        font-size: 5.3vw;
        
        line-height: 1.3;
    }
    .cat-name {
        padding: 2px 10px;
    }
    .column-l h2 {
        padding: 15px 0 15px;
        font-size: 4.4vw;
    }
    .column-l h3 {
        padding: 7px 15px 5px 5px;
        font-size: 4.2vw;
    }
    .column-l h4 {
        font-size: 4vw;
    }
    .column-r h3 {
        font-size: 4vw;
    }
    .column-r li a {
        font-size: 3.4vw;
    }
    .side-column-list {
        width: 100%;
        margin-right: 0;
    }
    .side-column-list .tx {
        line-height: 1.5;
    }
    #ez-toc-container ul ul, .ez-toc div.ez-toc-widget-container ul ul {
        margin-top: 5px;
    }
    blockquote {
        padding: 5vw;
        background-size: 35px;
        background-position: 15px 0px;
    }
    .parent-title {
        padding: 7px 10px;
    }
    .parent-title a {
        font-size: 3.3vw;
    }
    .child-area {
        padding: 4vw 3vw 4vw;
    }
    .child-title {
        padding: 0px 10px 3px;
    }
    .child-title a {
        font-size: 3vw;
    }
    .parent-title .arrow {
        top: 20px;
        right: 20px;
    }
    .child-title .arrow {
        right: 20px;
        top: 18px;
    }
    #ez-toc-container nav {
        padding: 4vw!important;
    }
    .profile h3 {
        background-position-y: 13px!important;
    }
    .pro-area {
        padding: 3vw;
    }
    .pro-img {
        margin-right: 0;
        width: 100%;
    }
    .pro-tx {
        width: 100%;
        margin-top: 30px;
    }
    div#ez-toc-container ul li {
        font-size: 4vw!important;
    }
    div#ez-toc-container ul li ul li {
        font-size: 3.5vw!important;
    }

    /*著書*/
    .year::before {
        top: 4.2vw;
    }
    .year {
        font-size: 4.5vw;
    }
    .book .item {
        width: 100%;
    }

    /*コラム*/
    .cat-menu-area {
        margin: 0px 0 30px;
    }
    .cat-menu-title {
        font-size: 3.2vw;
        padding: 2px 2vw 2px;
    }
    .cat-menu {
        padding: 0px 4.5vw 0;
    }
    .column-list .item {
        width: 49%;
        margin-right: 2%;
    }
    .column-list .item:nth-child(2n) {
        margin-right: 0;
    }
    .column-list .item img {
        height: 25vw;
    }
    






    .cta-area {
        padding: 5vw;
    }
    .cta-area h3 {
        font-size: 6.3vw;
    }
    .cta-area h3 span.cta-kome {
        font-size: 10px;
    }
    .cta-area .item {
        width: 100%;
    }
    .cta-area .item:first-child {
        margin-bottom: 30px;
    }
    .cta-area .item:first-child a {
        font-size: 10vw;
        line-height: 1;
    }
    .footer-logo {
        width: 100%;
        margin-bottom: 30px;
    }
    .footer-link .fbox {
        display: block;
    }
    .footer-link li {
        border-right: none;
        margin-bottom: 10px;
    }
    .cta-area .item:first-child a img {
        width: 9vw;
        top: -3px;
        margin-right: 8px;
    }
    .content-area iframe {
        width: 100%;
        height: 62vw;
    }
    /*感謝の声*/
    .voice-list a {
        display: block;
        padding: 4vw;
    }
    .cat {
        display: block;
        padding: 2px 0px;
        margin-bottom: 5px;
    }
    .btn-more {
        width: 100%;
    }
    .btn-more:before {
        top: 27px;
    }
    .btn-more a {
        padding: 15px;
    }

}

@media (max-width: 320px) {}