/*  
Theme Name: Itonobuhisa
Version: 1.0
*/

/*>>>>> Setup and Reset <<<<<*/

@font-face {
font-family: 'Noto Sans Regular';
src: url('../../themes/itonobuhisa/fonts/NotoSansJP-Regular-sub.otf');
font-display: swap;
}

@font-face {
font-family: 'Noto Sans Medium';
src: url('../../themes/itonobuhisa/fonts/NotoSansJP-Medium-sub.otf');
font-display: swap;
}

@font-face {
font-family: 'Noto Sans Bold';
src: url('../../themes/itonobuhisa/fonts/NotoSansJP-Black-sub.otf');
font-display: swap;
}


*, *::after, *::before {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html,body {
height:100%;
-webkit-text-size-adjust: 100%;
}
body, html, p, ul, ol {
margin: 0;
padding: 0;
border: none;
}
body {
color: #2d2d2d;
background: #fdfdfd;
-x-system-font:none;
font-family: 'Titillium Web', 'Noto Sans Regular', YuGothic,"游ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
font-feature-settings : "palt" ;
-webkit-font-feature-settings: "palt";
font-stretch:normal;
font-style:normal;
font-variant:normal;
font-size-adjust:none;
font-weight:normal;
width:100%;
height: 100%;
font-size:1.03em;
line-height:1.5em;
text-align: left;
position: relative;
overflow-x: hidden;
}


h1, h2, h3, h4, h5, h6  {
display: block;
margin: 5px 0;
clear:both;
padding:0;
line-height: 1.5em;
font-weight: normal;
font-family: 'Noto Sans Bold';
}

h1  {font-size: 30px}
h2  {font-size: 27px}
h3  {font-size: 20px}
h4  {font-size: 18px}
h5  {font-size: 16px}
h6  {font-size: 15px}

p  {
line-height: 1.8em;
margin: 10px 0;
}

ul, ol  {
margin: 10px 0;
padding: 0 0 0 19px;
}

/*>>>>> Navigation <<<<<*/

a {
color:#2d2d2d;
text-decoration: underline;
}

a:link, a:visited  {
}

a:hover{
text-decoration: none;
color: #7e7e7e;
}

a[href^="tel:"] {
text-decoration:underline;
}

.mobile,
br.mobile {
display:none;
}
.desktop,
br.desktop {
display:block;
}


/* IMAGES*/
img  {
margin: 0;
outline: 0;
font-size: 100%;
vertical-align: top !important;
max-width: 100%;
height: auto;
transition: all 0.5s ease-in-out 0s;
}

a:hover img:not(.channelimg) {
opacity:0.5;
transition: all 0.5s ease-in-out 0s;
}

.single img {
max-width:100%;
height: auto;
}
.screen-reader-text {
clip: rect(1px, 1px, 1px, 1px);
position: absolute;
}
#gallery-1 img {
border: none !important;
}
.aligncenter {
display: block;
padding: 5px;
margin-left: auto;
margin-right: auto;
text-align:center;
}

.alignleft {
float: left;
padding: 5px;
margin: 0 10px 5px 0;
display: inline;
}

.alignright {
float: right;
padding: 5px;
margin: 0 0 2px 7px;
display: inline;
}	

a img {
text-decoration: none;
outline: 0;
vertical-align: baseline;
border: 0;
}

p img { 
height:auto;
max-width:100%;
}

body.single p {
margin:15px auto;
}

#gallery-1 .gallery-item {
float: left;
margin-bottom: 5px;
margin-top: 5px;
text-align: center;
width: 16%;
}

.wp-caption {
max-width:100%;
}

.wp-caption-text{
background: transparent none repeat scroll 0 0;
color: #515151;
font-size: 0.8rem;
line-height: 1.4rem;
margin: 0 !important;
padding: 6px 0;
text-align: center;
}

.wp-caption img{
height:auto;
}
/* remember to define focus styles! */
:focus {
outline: 0 dotted #ccc;
}


.clear {clear:both; height:1px;}	
.spacer{clear:both; height:1px;}

table {
margin: 20px 0 40px;
width: 100%;
border-collapse: collapse;
}
table th,
table td {
border-bottom: 1px dotted #d1d1d1;
padding: 15px;
font-weight: normal;
}

.boxes-wrapper .double-wrapper.photos {
padding:25px 80px 0 25px;
}

.book-cover {
padding: 20px 30px 20px 25px;
float: left;
width: 200px;
min-width: 22%;
}
.book-cover-desc {
padding: 20px 0;
}
.book-cover-desc h4 {
display: inline;
font-size: 1.3em;
}

table.profile td {
padding: 10px 10px 40px;
display: block;
border: none;
}

table.profile th {
padding: 0 10px;
display: block;
font-size: 0.8em;
line-height: 1.5em;
background: none;
color: #868686;
}

.xsmall {
font-size: 60%;
line-height: 1.1em;
}
.small {
font-size: 80%;
line-height: 1.1em;
}
.slarge {
font-size: 1.5em;
line-height: 1.5em;
}
.large {
font-size: 2em;
line-height: 1.4em;
}
.xlarge {
font-size: 3em;
line-height: 1.4em;
}
.xxlarge {
font-size: 4em;
line-height: 1.4em;
}
.xxxlarge {
font-size: 5em;
line-height: 1.4em;
}
.padd {
padding: 1% 2%;
}
.xpadd {
padding: 2% 4%;
}
.xxpadd {
padding: 4% 6%;
}
.nopadd {
padding: 0 !important;
}
.nopaddy {
padding-top: 0 !important;
padding-bottom: 0 !important;
}
.nopaddx {
padding-right: 0 !important;
padding-left: 0 !important;
}
.nopaddb {
padding-bottom: 0 !important;
}

/*   h2-title is the title of posts*/
.h2-title  {
display: block;
margin: 5px 0 10px 0;
font-size: 15pt;
line-height:1.1em;
background:capitalize;
padding:5px 0;
}

#title-box {
background: #e3e3e3 url('images/wide-contact.jpg') no-repeat center center / cover;
margin: 0;
padding: 165px 0 80px;
width: 100%;
}

h1.post-title {
font-size: 2.5em;
margin: 20px auto;
max-width: 1280px;
text-align: center;
}

.tags-rev {
display: inline-block;
font-size: 3rem;
font-weight: normal;
margin: 0;
padding: 10px 0 0 0;
font-family: 'Titillium Web', sans-serif;
line-height: 3rem;
text-align: center;
width: 100%;
}
.tags-date {
padding: 5px 0;
font-size: 0.8em;
color: #5b5b5b;
text-align: center;
}

h2.cat-title,
.page h1,
.search h1,
.archive h1,
.h2-archive {
display: block;
font-size: 20px ;
line-height: 1.5em ;
padding: 22px 10px 20px 20px ;
margin:12px 0 11px ;
border:none ;
}
h1.plane {
display: block;
font-size: 60px;
margin: 0 auto;
padding: 30px;
text-align: left;
font-family: 'Noto Sans Bold';
max-width: 1280px;
}


h2.home-title {
font-size: 24px !important;
padding: 10px 20px !important;
font-weight: normal;
}

.entry h2 {
margin: 40px 0 30px;
}
.entry h3,
.entry h4,
.entry h5 {
margin: 40px 0 10px;
}

#mouse {
background: rgba(0, 0, 0, 0) url("images/scroll-mouse.png") no-repeat scroll center bottom / contain ;
bottom: 15px;
display: block;
height: 40px;
left: 50%;
margin: 0 auto 0 -20px;
padding: 0;
position: absolute;
transform: rotate(90deg);
width: 40px;
z-index: 100; 
}

/*home*/
body.home #headerInner-sub {
float: right;
padding: 0;
text-align: center;
transition: all 0.5s ease-in-out 0s;
}
#headerContainer.shrink {
background:#f7f7f7;
transition: all 0.5s ease-in-out 0s;
}

#headerContainer {
position:fixed;
width: 100%;
overflow: hidden;
z-index: 10;
top:0;
transition: all 0.5s ease-in-out 0s;
}
#headerContainer #headerInner {
margin: 0 auto;
max-width: 1670px;
width:95%;
overflow: hidden;
padding: 16px 0 40px;
transition: all 0.5s ease-in-out 0s;
}
#headerContainer.shrink #headerInner {
padding: 0 0 24px;
}
#headerInner #logo {
transition: all 0.3s ease-in-out 0s;
float:left;
}
#headerInner #logo a {
display: block;
}
body.home #headerInner #logo {
opacity:0;
top:50px;
position:absolute;
transition: all 0.5s ease-in-out 0s;
}
body.home #headerInner #logo.show {
opacity: 1;
top: 24px;
transition: all 0.5s ease-in-out 0s;
width: 210px;
}

header.others {
}
header.others #headerInner {
transiticon: all 0.5s ease-in-out;
}
header.others #headerInner #logo {
opacity:1;
position:absolute;
transition: all 0.5s ease-in-out 0s;
top: 24px;
width: 210px;
}
#headerContainer.shrink #logo {
transition: all 0.5s ease-in-out 0s;
width: 180px !important;
top:10px !important;
}


#headerInner-sub {
float: right;
margin: 21px 0 0;
padding: 0;
transition: all 0.5s ease-in-out 0.3s;
}

#headerInner-sub ul {
margin: 0;
padding:0;
}
#headerInner-sub ul li {
display: block;
float: left;
line-height: 1.7em;
list-style: outside none none;
position: relative;
}
#headerInner-sub ul li a {
padding: 0 2px;
position: relative;
display: inline-block;
text-decoration: none;
margin: 0 10px;
vertical-align: bottom;
}
#headerInner-sub ul li a span.tag-jp {
font-size: 16px;
line-height: 1.5em;
overflow: hidden;
font-family: 'Noto Sans Medium';
}

body.home #headerContainer:not(.shrink) #headerInner-sub ul li:not(.logo-others) a::after {
background: #fff;
}
#headerInner-sub ul li:not(.logo-others) a::after {
position: absolute;
bottom: -4px;
left: 0;
content: '';
width: 100%;
height: 2px;
background: #333;
transform: scale(0, 1);
transform-origin: left top;
transition: transform .3s;
}
#headerInner-sub ul li.current:not(.logo-others) a::after,
#headerInner-sub ul li:not(.logo-others) a:hover::after {
transform-origin: left top;
transform: scale(1, 1);
}

ul.category {
text-align: center;
margin: 60px 0;
padding: 0;
}
ul.category li {
display: inline-block;
list-style: none;
margin: 5px;
padding: 0;
line-height: 1.8em;
}
ul.category li a {
position: relative;
padding: 2px 12px;
text-decoration: none;
color: #242424;
line-height: 1.8em;
display: inline-block;
border-bottom: 1px solid #ddd;
font-size: 0.9em;
}
ul.category li a::after {
position: absolute;
bottom: 0px;
left: 0;
content: '';
width: 100%;
height: 2px;
background: #333;
transform: scale(0, 1);
transform-origin: right top;
transition: transform .3s;
}


ul.category li a:hover::after,
#headerInner-sub ul li a:hover::after {
transform-origin: left top;
transform: scale(1, 1);
}
ul.category li.current-cat a::after,
#headerInner-sub ul li.current a::after {
transform-origin: left top;
transform: scale(1, 1);
}


/*Dropcap*/	
sup{
color:#333333;
float:left;
font-size:5.5em;
font-style:normal;
font-weight:normal;
line-height:100%;
margin-right:5px;
text-decoration:none;
text-transform:uppercase;
vertical-align:bottom;
}

/*Small is the text used in date, and bottom text*/
small {
text-align: left;
font-size: 0.8rem;
line-height: 1rem;
}

hr {
border: 0;
height: 0;
border-top: 1px solid rgba(0, 0, 0, 0.1);
border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

div.alert {
background: #FFAF7F none repeat scroll 0 0;
margin: 50px 10px;
padding: 20px 7px;
border-radius: 10px;
}
blockquote {
background: #ececec none repeat scroll 0 0;
margin: 20px;
padding: 30px 40px;
border-radius: 10px;
position: relative;
}
blockquote::before {
position: absolute;
font-family: 'Font Awesome 5 Free';
content: '\f10d';
font-size: 23px;
color: #c1c1c1;
top: 15px;
left: 15px;
font-weight: 600;
}
blockquote::after {
position: absolute;
font-family: 'Font Awesome 5 Free';
content: '\f10e';
font-size: 23px;
color: #c1c1c1;
right: 15px;
bottom: 15px;
font-weight: 600;
}
blockquote cite {
display: block;
font-size: 0.8rem;
text-align: right;
color: #808080;
padding-right:20px;
}

body.single .post {
margin: 0 auto 50px;
text-align: left;
}

.entry {
margin:0;
}

/*SEARCH IN MAIN PAGE*/
#search{
display:inline;
margin: 45px 0;
padding: 0;
}
#search form {
padding:0;
margin:0;
}
#search .txtField {
border:1px solid #f3f3f3;
width:300px;
margin:0 0 0 22px;
padding:3px;
font-family: Tahoma, Arial, Helvetica, sans-serif;
font-size:12px;
}
#search .small{
color:#666666;
display:block;
font-size:11px;
font-weight:normal;;
}

#content_box{
padding: 0;
position: relative;
margin:0 auto;
max-width:1280px;
min-height:500px;
}
#content_box_full{
padding: 0;
width:100%;
z-index:1;
}

#left_box{
padding: 30px;
margin: 0 auto 100px;
background: transparent;
font-size: 1em;
}

body.archive #left_box,
body.single #left_box{
margin: 50px auto;
background: transparent;
font-size: 1em;
width: 70%;
float: left;
padding: 0 2%;
}

#right_box {
width: 30%;
float: right;
padding: 0 2%;
margin: 50px 0;
}
#right_box.fixed {
position: fixed;
}
#right_box_inner {
overflow: hidden;
}

li.widget,
.side-boxes {
margin-bottom: 40px;
}

.widecontent {
width: 1280px ;
}
.fullcontent {
width: 100% !important;
}
#left_box.fullcontent {
padding: 0;
margin: 0;
}

.read-more{
clear:both;
}
.more-link{
clear:both;
}
.breadcrumb {
font-size: 11px;
line-height: 1.5em;
margin-bottom: 10px;
padding: 2px 10px;
white-space:nowrap;
overflow:hidden;
text-overflow: ellipsis;
display:none;
}
.breadcrumb .home {
}
.breadcrumb a {
color: #999999;
text-decoration:none;
}
.breadcrumb .divider {
color: #999999;
height: 40px;
margin: 0 4px;
}

input,textarea,select {
padding:15px;
background:#f1f1f1;
font-size: 16px;
border:none;
border-radius:2px;
font-family : inherit;
}
textarea {
width:100%;
}
input[type="submit"] {
margin: 10px;
padding: 15px 60px;
cursor:pointer;
}
input[type="submit"]:hover {
background:#ddd;	

}
.inquiry-box {
margin:50px auto;
width:100%;
}
.inquiry-box th {
padding:15px;
font-weight: normal;
width:30%;
text-align:left;
background: none;
border-bottom:1px dotted #bcbcbc;
}
.inquiry-box td {
padding:15px;
border-bottom:1px dotted #bcbcbc;
}
.kakunin-link {
margin: 15px 0;
text-align: center;
}

.button-link {
text-align:center;
}

.hissu {
float: right;
margin: 6px 6px 0;
}

.entry ul,
.entry ol {
margin:0;
padding:0;
}
.entry ul ul {
margin:0 0 0 20px;
}
.entry ul li:before {
content: "\f105";
font-family: "Font Awesome 5 Free";
width: 20px;
height: 20px;
margin: 0;
color:#B7B7B7;
font-weight: 900;
position: relative;
margin-right: 0.5em;
}
.entry ul li ul li:before {
content: "■";
position: relative;
margin-right: 0.5em;
color:#748D9B;
}
.entry ul li {
line-height: 1.5em;
margin: 3px 0 15px;
padding: 0 ;
list-style:none;

}
.entry ol li {
margin: 3px 0 5px 30px;
line-height:1.5em;
}
.navright {
float:right;
}
.navleft {
float:left;
}
.navcenter {

}
.wp-pagenavi {
margin: 80px 0 50px;
padding: 10px 0;
text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span {
background: none !important;
border: none !important;
font-size: 18px;
line-height: 3.5em;
padding: 12px !important;
text-decoration: none !important;
word-break: break-all;
color: #a2a2a2;
}
.wp-pagenavi a:hover,
.wp-pagenavi span:hover {
background: #999999;
}
.wp-pagenavi span.current {
background: none repeat scroll 0 0 #999999;
border: none !important;
color: #242424;
}


.en {
font-family: 'Titillium Web', sans-serif;
}
.jpbold {
font-family: 'Noto Sans Bold';
}

#youtube {
}

.ch-box {
float: left;
}
.ch-title {
float: left;
font-size: 1.35em;
text-transform: uppercase;
}
.ch-jp {
float: left;
clear: both;
color: #888;
font-size: 0.9em;
}
.ch-number {
font-family: 'Titillium Web', sans-serif;
/* font-variant-numeric: tabular-nums; */
font-size: 3.5em;
color: #55951a;
line-height: 0.7em;
margin: 0 15px;
}


.channel-icon {
border-radius: 100%;
width: 85px;
float: left;
overflow: hidden;
margin: 10px;
box-shadow: 1px 1px 3px #797979;
}
.channel-desc {
float: left;
margin: 10px;
}
.channel-desc h3 {
margin: 5px 0 !important;
font-size: 24px;
font-family: "Noto Sans Bold";
}
.channel-desc h3 a {
text-decoration: none;
color: #242424;
}
.channel-desc ul {
margin: 0;
padding: 0;
color: #828282;
font-size: 0.8em;
}
.channel-desc ul li {
float: left;
margin: 0 20px 0 0;
list-style: none;
}

.yrc-content,
.yrc-section {
overflow: inherit !important;
}
.yrc-item-meta {
margin: 6px 0 !important;
}
.yrc-item-title {
font-size: 15px !important;
}
.yrc-content .yrc-item:hover img {
filter: none;
opacity: 1;
}
.yrc-thumb a.yrc-video-link::before {
z-index: 10;
}
.yrc-video:hover .yrc-thumb a::after  {
opacity: 0;
transition: all 0s ease-in-out 0s;
}
body.home #yrc-shell-0 .yrc-item .yrc-thumb a.yrc-video-link::before {
font-family: "Font Awesome 5 Brands" !important;
font-weight: 900 !important;
content: "\f167" !important;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
transition: all 0.3s ease-in-out 0s;
}
body.home #yrc-shell-0 .yrc-item .yrc-thumb a.yrc-video-link:hover::before {
color: red;
transition: all 0.3s ease-in-out 0s;
}

ul.yrc-core {
margin: 20px auto 0  !important
}

ul.yrc-core li {
padding:0 10px;
}

.yrc-video-title {
margin: 5px 0 !important;
line-height: 1.5em !important;
}
.yrc-video-date  {
color: #a4a4a4;
}

.slidervideos {
}

ul.slick-box-videos {
margin: 20px auto 0 !important;
padding: 0;
}

ul.slick-box-videos li {
padding: 0 10px 0 0;
list-style: none;
}

div.video-thumb {
position: relative;
width: 100%;
padding-top: 56.5%;
overflow: hidden;
margin: 0 auto;
}
div.video-thumb img {
width: 100%;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
p.video-title {
margin: 5px 0 !important;
line-height: 1.5em !important;
text-align: left;
}
p.video-date {
font-size: 0.75em;
color: #cacaca;
text-align: left;
}

.spinner-wrap {
position: absolute;
bottom: 39%;
width: 100%;
text-align: center;
}

.circle-border {
width: 70px;
height: 70px;
padding: 3px;
display: flex;
justify-content: center;
align-items: center;
border-radius: 50%;
background: rgb(166, 203, 45);
background: linear-gradient(0deg, rgba(166, 203, 45,0.1) 33%, rgb(166, 203, 45) 100%);
animation: spin .8s linear 0s infinite;
margin: 0 auto;
}

.circle-core {
width: 100%;
height: 100%;
background-color: #fff;
border-radius: 50%;
}


#loading {
background: url("images/ajax-loader2.gif") no-repeat scroll center center #fff;
bottom: 30%;
position: absolute;
height: 100px;
width: 100%;
}


#home-loading-icon {
background: url("images/logo.svg") no-repeat scroll center 40% #fff;
background-size: 300px;
padding: 0;
z-index: 10000;
width: 100%;
height: 100%;
display: block;
position: fixed;
top: 0;
}

#home-loading-icon.loaded {
animation: hideop 0.2s linear 1.5s;
animation-fill-mode: forwards;
background: none !important;
transition-delay: 1s;
}
@keyframes hideop {
0% {
opacity: 1;
}
100% {
opacity: 0;
visibility: hidden;
}
}

#main {
background: none repeat scroll 0 0 #242424;
overflow: hidden;
}

/* Clear (used for horizontal thumbnails)
-------------------------------------------*/

.clear {
clear: both;
display: block;
overflow: hidden;
visibility: hidden;
width: 0;
height: 0;
float: none;
}

li.widget {
list-style: none;
}
.widgettitle {
border-bottom: 1px solid #1A1A1A;
font-size: 1.3em;
line-height: 1.5em;
list-style: none outside none;
margin: 5px 0 15px;
padding: 5px 0;
}
li.widget_calendar table td, li.widget_calendar table th {
padding: 10px;
text-align: center;
line-height: 1em;
}
table#wp-calendar caption {
margin-bottom:10px;
}
li.widget_categories ul {
padding: 0;
}
li.widget_categories ul li {
list-style: none;
}
li.widget_categories ul li a {
text-decoration: none;
width: 100%;
display: block;
padding: 7px;
transition: all 0.5s ease-in-out 0s;
}
li.widget_categories ul li a:hover {
background: #ececec;
transition: all 0.5s ease-in-out 0s;
}
li.widget_categories ul li::before {
content: "\f105";
font-family: "Font Awesome 5 Free";
width: 20px;
height: 20px;
margin: 0;
color:#B7B7B7;
font-weight: 900;
float: left;
padding: 9px 0 0 5px;
}
select#name::-ms-expand,
select#cat::-ms-expand,
select[id^="archives-dropdown-"]::-ms-expand {
display: none;
}
select#name,
select#cat,
select[id^="archives-dropdown-"] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin-bottom: 20px;
padding: 14px;
font-size: 93%;
line-height: 1.1em;
border-radius: 0;
border: 1px solid #cecece;
background-image: url("images/toggle.png");
background-repeat: no-repeat;
background-position: right 10px center;
background-color: #fff;
width: 100%;
background-size: 13px;
}


.searchform {
position: relative;
}
.searchfield {
font-size: 14px;
width: 90%;
margin: 3px;
padding: 10px;
border: solid 1px #bbb;
border-radius: 4px;
background-color: #efefef;
}
.searchsubmit {
font-family: "Font Awesome 5 Free";
font-size: 1.4em;
position: absolute;
top: 0;
right: 8%;
margin-top: 10px;
padding: 0;
cursor: pointer;
color: #6297f5;
border: none;
background: transparent;
}
.searchsubmit:hover {
opacity: .6;
}
#side-search i {
margin: 0 1%;
color: #a4a4a4;
width: 5%;
text-align: center;
font-size: 0.6em;
}
#side-search input#s,
#side-search select {
width: 44%;
line-height: 1.4em;
font-size: 16px !important;
margin: 0;
/* float: left; */
padding: 8px !important;
height: 44px;
border: 1px solid #cdcdcd;
}
#side-search input#submit {
width: 100%;
margin: 10px 0;
background: #009AC9;
color: #fff;
}

body.search-results #left_box #side-search i {
width: 2%;
}
body.search-results #left_box #side-search input#submit,
body.search-results #left_box #side-search input#s,
body.search-results #left_box #side-search select {
width: 30%;   
}
body.search-results #left_box #side-search input#submit {
padding: 10px;
margin-left: 1%;
}

body.search-results #left_box li {
border-bottom: 1px solid #cdcdcd;
}
body.search-results h4 {
padding: 0;
}
body.search-results h4 a {
text-decoration: none;
}

li.widget.widget_recent_entries li {
margin-bottom: 10px;    
}
li.widget.widget_recent_entries li a {
text-decoration: none;    
}
li.widget.widget_recent_entries li span.post-date {
font-size: 0.8em;
color: #B5B5B5;
}

.fb_iframe_widget span {
vertical-align: top !important;
}

p.nocomments {
display:none;
}

.new-icon {
vertical-align: inherit !important;
}

.wpcf7-response-output {
}	

form {
margin: 0 !important;
}

.post-navigation {
overflow: hidden;
padding: 12px 0;
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}

.prev {
float: left;
}

.next {
float: right;
}

.navigation {
font-size: 13px;
overflow: hidden;
clear: both;
}

#totop,
#infscr-loading {
clear: both;
text-align: center;
width: 100%;
}
#infscr-loading img {
margin:20px;

}
#totop p,
#infscr-loading div p {
background: none repeat scroll 0 0 #222222;
margin: 0;
padding: 10px;
font-family: "Vidaloka",serif;
text-transform: uppercase;

}
#totop a,
#infscr-loading div a {
color:#FFF;
text-decoration:none;
}


.box-center {
width:1000px;
margin:0 auto;
}

/*オリジナル*/

a.button {
position: relative;
transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}
a.button:hover {
color: #fff !important;
background-color: transparent;
text-shadow: none;
}
a.button i:not(.fab) {
position: absolute;
right: 20px;
transition: all 0.4s ease-in-out 0s;
}
a.button:hover i:not(.fab) {
right: 10px;
transition: all 0.4s ease-in-out 0s;
}
a.button:hover:before {
bottom: 0%;
top: auto;
height: 100%;
}
a.button:before {
display: block;
position: absolute;
left: 0px;
top: 0px;
height: 0px;
width: 100%;
z-index: -1;
content: '';
color: #fff !important;
background: #2d2d2d;
transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
}
a.button-colored:before {
background: #55951a !important;
}

a.button {
background: transparent none repeat scroll 0 0;
border: 2px solid #2d2d2d;
cursor: pointer;
color: #2d2d2d;
display: inline-block;
line-height: 1.2em;
margin: 20px 10px 20px 0;
padding: 15px 40px;
text-align: center;
text-decoration: none;
transition-delay: 0s;
transition-duration: 150ms;
transition-property: background, color;
transition-timing-function: linear;
vertical-align: bottom;
font-size: 16px;
min-width: 250px;
}

a.button-colored {
background: #55951a;
border: 2px solid #55951a !important;
color: #FFF !important;
}
a.button-colored:hover {
background: inherit;
}

a.button-white {
background: none;
border: 2px solid #fff !important;
color: #FFF !important;
letter-spacing: 1px;
}
a.button-white:hover {
background: #fff;
color:#242424 !important;
}
a.button-red {
background: red;
border: 2px solid red !important;
color: #FFF !important;
letter-spacing: 1px;
}
a.button-red:hover {
background: #fff;
color:red !important;
}

a.button-line {
text-decoration: none;
border-bottom:  1px solid #000;
padding: 3px 15px;
}

.inviews {
bottom: -30px;
opacity: 0;
position: relative;
transform: scale(1);
transition: all 1s ease-in-out 0s;
}
.inviews.show {
bottom:0;
opacity:1;
transform: scale(1);
transition: all 1s ease-in-out .2s;
}

#footer {
position: relative;
background: #616c75;
display: block;
width: 100%;
overflow: hidden;
color: #fff;
padding: 15px 0 0;
}
#footer .headline {
padding: 30px 0;
z-index: 1;
position: relative;
}
.footer-body {
width: 98%;
margin: 0 auto;
}
.footer-body p.footer-logo {
width: 200px;
display: block;
margin: 0 0 20px 0;
}
.footer-body a {

}
.footer-body p.copyright {
clear: both;
padding: 10px 0 0 0;
font-size: 0.8em;
}
.footer-body p.copyright a {
color: #fff;
text-decoration: none;
}
footer ul {
margin: 0;
padding: 0;
}
footer ul li {
line-height: 1.8em;
}
footer a,
footer ul li a {
text-decoration: none;
color: #fff !important;
transition: all 0.5s ease-in-out 0s;
}
footer a:hover {
color: #878787 !important;
transition: all 0.5s ease-in-out 0s;
}
footer ul {
list-style: none;
}
footer ul li:last-child {
border: none;
}

footer ul li a img {
height: 25px;
}
footer ul.sub-menu {
margin: 10px 0 10px 40px;
width: 100%;
}
footer h4 {
margin: 0 0 20px;
}
footer ul li.logo-others  {
line-height: 2em;
}

.show-image {
margin:0;
padding:0;
}

.tags {
font-size: 26px;
line-height: 1em;
text-transform: uppercase;
max-width: 1280px;
text-align: left;
display: block;
margin: 0 auto;
padding: 0 30px;
letter-spacing: 2px;
font-family: 'Montserrat', sans-serif;
}
.hero {
width: 100%;
transition: all 2.5s ease 0.3s;
text-align: center;
padding: 240px 0 120px;
}

[id^="hero-"] {
/*    background: #d9e2ea;
*/}

.headline {
clear: both;
margin: 0 auto;
max-width: 1280px;
padding: 65px 0 55px;
}
.headline-next {
}
.headline article {
line-height: 1.8em;
margin: 10px auto;
overflow: hidden;
padding: 0 10px;
text-align: left;
width: 50%;
}

.wide-image {
margin-left: calc(49% - 595px);
padding: 0;
width: auto;
}
.wide-image img {
width:100%;
height:auto;
}
.spacer {
margin:50px 0;
}

.boxes-wrapper {
clear: both;
/*    margin: 0 auto;
max-width: 1670px;
*/    overflow: hidden;
}
.boxes-wrapper.colored {
background:#f1f1f1;
}
.single-wrapper {
width:100%;
float:left;
}
.three-quarters-wapper {
width:75%;
float:left;
}
.two-thirds-wrapper {
float: left;
width: 66.6666%;
}
.double-wrapper {
float: left;
width: 50%;
}
.triple-wrapper {
width:33.33333%;
float:left;
}
.quadruple-wrapper {
width:25%;
float:left;
}

.boxes-image img {
width:100%;
height:auto;
}

.boxes-desc {
background: #F1F1F1 none repeat scroll 0 0;
font-size: 0.8em;
min-height: 123px;
padding: 20px 28px;
border: 1px solid #fff;
}

#topcontrol {
z-index:998;
}

.slider-wrap {
overflow: hidden;
/*	height: 100vh;
*/}

.slider {
margin: 0 auto;
overflow: hidden;
position: relative;
}
.slick-content {
position: absolute;
color: #fff;
z-index: 1000;
width:80%;
text-align: left;
opacity: 1;
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.slick-content h3 {
padding: 0;
color: #55951a;
}
.slick-content h3.en {
font-size: 190px;
line-height: 150px;
margin-bottom: 20px;
word-break: break-word;
}
.slick-content h3.jp {
font-size: 5.5em;
line-height: 1em;
margin-bottom: 20px;
font-family: 'Noto Sans Bold';
font-weight: normal;
}
.slick-content p {
font-size: 1.8em;
line-height: 1.5em;
color: #2d2d2d;
}
.slick-current .slick-content .popup {
animation: slide-links 1.4s 1.3s backwards;
}
.slick-content .popup {
width: 40%;
}
.slick-current .slick-content .popup:nth-child(2) {
animation-delay: 1.8s;
}
.slick-current .slick-content .popup:nth-child(3) {
animation-delay: 2.5s;
}
@keyframes slide-links {
0% {
opacity: 0;
transform: translateY(30px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}

.slick-box.home .slick-slide {
height: 90vh;
}

.slick-slide.slide0 {
background-position: 75%;
}
.slick-slide.slide1 {
background-position: right;
}
.slick-slide.slide2 {
background-position: 85%;
}
#video,
#video2{
position: absolute;
min-height: 100%;
}
.slider {
margin: 0 auto;
overflow: hidden;
height: 90vh;
border: 0px solid #fff;
transform: translateY(200px);
transform-origin: center center;
transition: transform 1.5s;
}
body.load .slider {
transform-origin: center right;
transform: translateY(0);
transition-delay: 0.8s;
}

.single #carousel {
margin:5px 0 20px !important;
position:relative;
}
.single .flexslider {
overflow:hidden;
position: relative;
}
.single .flexslider li {
background:none !important;
margin:0 !important;
padding:0 !important;
}

.gallery-caption {
background: none repeat scroll 0 0 #333333;
color: #FFFFFF;
font-size: 12px;
line-height: 1.4em;
margin: 0;
padding: 0;
position:absolute;
bottom:0;
opacity:0.8;
width: inherit;
}
.gallery-caption span {
padding:5px 10px;
display: block;
}
.tgl-box {
position:relative;
padding:0;
margin:0;
}
.tgl {
background: url("images/tgl-bg.png") no-repeat scroll left top #242424000;
bottom: 0;
color: #FFFFFF;
cursor: pointer;
font-size: 12px;
height: 20px;
line-height: 1.7em;
margin: 0;
opacity: 0.5;
padding: 0;
position: absolute;
right: 0;
text-indent: -9999px;
width: 20px;
}
.tgl.active {
background: url("images/tgl-bg.png") no-repeat scroll left -20px #242424000;
}
#carousel li.flex-active-slide img {
opacity:0.3 !important;
}

.boxes-wrapper .double-wrapper {
padding:0;
}
.boxes-wrapper h2 {
margin:30px 0 20px;
}
.boxes-wrapper h3 {
margin:30px 0 20px;
}

span.required {
padding: 1px 4px;
background: red;
border-radius: 2px;
color: #fff;
margin: 0 15px;
font-size: 12px;
line-height: 1rem;
word-break: keep-all;
}

.select {
position: relative;
display: inline-block;
margin-bottom: 15px;
}

.select select {
display: inline-block;
padding: 10px 30px 10px 20px;
cursor: pointer;
color: #7b7b7b;
border: 0;
border-radius: 0;
outline: 0;
background: #f6f7f8;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}

.select select::-ms-expand {
display: none;
}
.select select:hover,
.select select:focus {
color: #242424;
background: #ddd;
}

.select select:disabled {
pointer-events: none;
opacity: .5;
}

.select::after {
content:'';
position: absolute;
top: 19px;
right: 15px;
width: 0;
height: 0;
pointer-events: none;
border-width: 8px 5px 0 5px;
border-style: solid;
border-color: #7b7b7b transparent transparent transparent;
}
.select select:hover ~ .select__arrow,
.select select:focus ~ .select__arrow {
border-top-color: #242424;
}

.select select:disabled ~ .select__arrow {
border-top-color: #ccc;
}

input[type=radio], input[type=checkbox] {
display: none;
}

span.wpcf7-list-item label {
display: inline-block !important;
margin: 4px 11px;
}
span.wpcf7-list-item {
margin: 0 !important;
}

.alert .wpcf7-list-item-label {
margin: 5px 10px  !important;
}

.wpcf7-radio .wpcf7-list-item-label,
.wpcf7-acceptance .wpcf7-list-item-label,
.wpcf7-checkbox .wpcf7-list-item-label {
box-sizing: border-box;
-webkit-transition: background-color 0.2s linear;
transition: background-color 0.2s linear;
position: relative;
display: inline-block;
margin: 0 20px 8px 0;
padding: 12px 12px 12px 42px;
border-radius: 5px;
background-color: #f6f7f8;
vertical-align: middle;
cursor: pointer;
}
.wpcf7-radio .wpcf7-list-item-label:hover,
.wpcf7-acceptance .wpcf7-list-item-label:hover,
.wpcf7-checkbox .wpcf7-list-item-label:hover {
background-color: #e2edd7;
}
.wpcf7-radio .wpcf7-list-item-label:hover:after,
.wpcf7-acceptance .wpcf7-list-item-label:hover:after,
.wpcf7-checkbox .wpcf7-list-item-label:hover:after {
border-color: #53b300;
}
.wpcf7-radio .wpcf7-list-item-label:after {
-webkit-transition: border-color 0.2s linear;
transition: border-color 0.2s linear;
position: absolute;
top: 50%;
left: 15px;
display: block;
margin-top: -10px;
width: 18px;
height: 18px;
border: 2px solid #bbb;
border-radius: 50%;
content: '';
}
.wpcf7-acceptance .wpcf7-list-item-label:after,
.wpcf7-checkbox .wpcf7-list-item-label:after {
-webkit-transition: border-color 0.2s linear;
transition: border-color 0.2s linear;
position: absolute;
top: 50%;
left: 15px;
display: block;
margin-top: -10px;
width: 18px;
height: 18px;
border: 2px solid #bbb;
border-radius: 3px;
content: '';
}

.wpcf7-radio .wpcf7-list-item-label:before {
-webkit-transition: opacity 0.2s linear;
transition: opacity 0.2s linear;
position: absolute;
top: 50%;
left: 19px;
display: block;
margin-top: -6px;
width: 10px;
height: 10px;
border-radius: 50%;
background-color: #53b300;
content: '';
opacity: 0;
}
input[type=radio]:checked + .wpcf7-list-item-label:before {
opacity: 1;
}

.wpcf7-acceptance .wpcf7-list-item-label:before,
.wpcf7-checkbox .wpcf7-list-item-label:before {
-webkit-transition: opacity 0.2s linear;
transition: opacity 0.2s linear;
position: absolute;
top: 50%;
left: 20px;
display: block;
margin-top: -11px;
width: 9px;
height: 15px;
border-right: 3px solid #53b300;
border-bottom: 3px solid #53b300;
content: '';
opacity: 0;
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
z-index:9;
}
input[type=checkbox]:checked + .wpcf7-list-item-label:before {
opacity: 1;
}

input[type="submit"]:hover {
background:#FF7F00;	
}
input[type="submit"] {
margin: 10px;
padding: 15px 60px;
cursor: pointer;
background: #FF942A;
}
input[type="submit"][disabled] {
background: #999999 none repeat scroll 0 0;
cursor: default;
color: #242424;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
border-radius: 3px;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
outline-offset: -2px;
}


.news-date {
padding: 5px 0;
font-size: 0.8em;
color: #5b5b5b;

}
.news-title {
padding: 5px 0;
width: 100%;
float: left;
line-height: 1.5em;
font-size: 1.3em;
}
.news-icon {
border-radius: 100%;
overflow: hidden;
box-shadow: 0 0 1px #959595;
margin: 6px 10px 0 0;
}

body.home .news-title {
padding: 5px 0;
font-size: 1em;
}
ul#news-list {
margin: 0;
padding: 0;
}
ul#news-list a {
color: #242424;
text-decoration: none;
width: 100%;
display: inline-block;
}
ul#news-list a:hover {
text-decoration: underline;
}

ul.recent-posts {
margin: 0;
padding: 0;
}
ul.recent-posts li {
list-style: none;
border-bottom: 1px solid #ddd;
padding: 10px 0 ;
}
ul.recent-posts li a {
text-decoration: none;
}

body.home ul#news-list {
height: 500px;
overflow-y: scroll;
background: #fff;
padding: 0;
margin: 0;
}
ul#news-list li {
list-style: none;
border-bottom: 1px solid #eee;
display: block;
overflow: hidden;
padding: 10px 15px;
}

ul.post-categories {
margin: 0;
padding: 0;
}
ul.post-categories li {
float: left;
margin: 0 4px 4px 0;
padding: 0 !important;
font-size: 0.7em;
line-height: 1.2em;
background: #ebedf0;
border-bottom: 2px solid rgba(0, 0, 0, .2) !important;
border-radius: 2px;
}
ul.post-categories li a {
padding: 5px 10px;
}
body.single .news-cat {
text-align: center;
font-size: .8em;
float: none;
width: 100%;
}
.news-cat {
padding: 5px 1px 0 0;
overflow: hidden;
}
.news-cat p {
min-width: 150px;
text-align: center;
border: 1px solid #a5a5a5;
display: inline-block;
margin: 0;
}
.news-cat p a {
width: 100%;
height: 100%;
padding: 2px 30px;
display: block;
}
.news-cat p a:hover {
text-decoration: none !important;
}
.date-format {
color: #999;
font-size: 14px;
margin-bottom: 5px;
}

p.title-en {
font-size: 2rem;
font-weight: normal;
margin: 100px 0 0 0;
padding: 0;
font-family: 'Titillium Web', sans-serif;
text-align: center;
text-transform: uppercase;
line-height: 2rem;
}
p.title-en::after {
height: 100px;
width: 1px;
content: "";
display: block;
margin: 10px auto;
border-right: 1px dotted;
}

img.profile {
max-width: 400px;
float:  right;
}

.youtube {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
max-width: 100%;
margin: 50px 0;
}
.youtube iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.single-footer-button {
margin-top:50px;
}

.logo-others img {
height: 34px;
}
.logo-others .fab {
vertical-align: middle !important;
margin: -1px 3px 0 0 !important;
transition: all 0.5s ease-in-out 0s;
}
.logo-others {
font-family: 'Titillium Web', sans-serif;
}
a.button-red:hover .fa-youtube,
.fa-youtube {
color: #FF0004 ;
}
.fa-youtube,
body.home .fa-youtube,
.mobilenav .fa-youtube,
footer .fa-youtube {
color: #FF0004 !important ;
}
a.button-red .fa-youtube {
color: #fff ;
}
.fa-twitter {
color: #1DA1F2 ;
}
.fa-facebook {
color: #4267B2 ;
}
.fa-instagram {
background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
padding: 2px 0;
}
.fa-amazon {
color: #f59f00f5;
}

.logo-others span {
transition: all 0.5s ease-in-out 0s;
font-size: 1.1em;
vertical-align: top;
}
.logo-others:hover span {
color: #737373;
}
footer .logo-ishin {
padding: 20px 0;
}

body.home.fts-powered-by-text-popup a.fts-powered-by-text {
display: none !important;
}

/* A single menu */
.dropotron {
background: #444;
list-style: none;
margin: 0;
min-width: 10em;
padding: 0.75em 1em 0.75em 1em;
}
.dropotron > li {
border-top: solid 1px #555;
margin: 0;
padding: 0;
}
.dropotron > li:first-child {
border-top: 0;}
.dropotron > li > a {
color: #fff;
display: block;
padding: 0.5em 0 0.5em 0;
text-decoration: none;
}
.dropotron > li.active > a,
.dropotron > li:hover > a {
color: #ccc;
}

/* Only applies to top level ("level-0") menus */
.dropotron.level-0 {
margin-top: 1em;
}
.dropotron.level-0:before {
content: '';
position: absolute;
border-bottom: solid 0.5em #444;
border-left: solid 0.5em transparent;
border-right: solid 0.5em transparent;
top: -0.45em;
}

#sns {
background: #d9e2ea;
max-width: inherit;
}
#sns .triple-wrapper {
width: 31.333%;
float: left;
margin: 5px 1% 30px ;

}
.box-title {
display: inline-block;
width: 100%;
text-align: center;
}

.home-tags {
font-size: 1.5em;
font-weight: normal;
font-family: 'Montserrat', sans-serif;
text-align: center;
display: block;
margin: 30px 0 10px 0;
line-height: 2rem;
}
.home-h2 {
display: inline-block;
font-size: 1em;
line-height: 1.2em;
margin: 0 0 30px !important;
padding: 0;
text-align: center;
clear: both;
}

#profile {
position: relative;
margin: 100px 0 30px;
padding: 0;
}
#profile .ito {
width: 36%;
margin-left: 10%;
position: relative;
}
#profile .message {
background: #d9e2ea;
padding: 50px;
margin-left: -2%;
margin-top: 50px;
position: relative;
width: 56%;
}

#consent a {
opacity: 1;
}
#consent.disabled a {
pointer-events: none;
opacity: 0.3;
}

#ouen {
overflow: hidden;
text-align: center;
color: #55951a;
margin-bottom: 69px;
}
#ouen h2 {
font-size: 4em;
font-family: 'Noto Sans Bold';
}
#ouen .triple-wrapper {
width: 31.333%;
float: left;
margin: 30px 1% 0;
padding: 40px 40px 20px;
border: 1px solid;
border-radius: 8px;
}
#ouen .triple-wrapper h3 {
margin: 30px 0 25px;
}
#ouen .triple-wrapper p.desc {
text-align: left;
}

ul.dropotron li.sub-menu-item > a::before {
margin-left: 0;
}

.title-index-tag {
text-align: center;
margin: 100px 0 0 0;
font-size: 1.5em;
text-transform: uppercase;
letter-spacing: 10px;
}
.title-index {
font-size: 2.8em;
margin: 10px 0 100px !important;
text-align: center;
letter-spacing: 5px;
}

.title-index::after {
content: "";
width: 1px;
height: 70px;
background: #000;
text-align: center;
display: block;
margin: 19px auto;
}

#ryakureki {
background: #f2f2f2;
margin: 0;
}

body.page-support .boxes-wrapper .double-wrapper:nth-of-type(3) {
padding: 0 35px;
}
body.page-support .entry .boxes-wrapper ul {
margin: 30px 0 0 1.3em;
}
body.page-support .entry .boxes-wrapper ul li::before {
content: "\f105";
font-family: "Font Awesome 5 Free";
width: 20px;
height: 20px;
margin: 0;
color: #B7B7B7;
font-weight: 900;
position: relative;
margin-right: 0.5em;
margin-left: -1em;
}
body.page-support .headline {
padding: 0;
}
body.page-contact-access #c02,
body.page-support  #form {
background: #e3e3e3;
max-width: inherit;
margin-top: 100px;
}

body.page-profile-policy #p02 .triple-wrapper {
padding: 50px 30px;
text-align: center;
background: #f2f2f2;
margin: 1%;
width: 31.3333%;
color: #55951a;
}
body.page-profile-policy #p02 .triple-wrapper h5 {
font-size: 1.2em;
text-align: left;
}
body.page-profile-policy #p02 .triple-wrapper p {
text-align: left;
border-top: 1px solid;
padding-top: 17px;
margin-top: 15px;
}
body.page-profile-policy #p02 h4 {
font-size: 2em;
}
#maga {
background: #fdfdfd;
}
ul#magazines li,
ul#books li {

}
ul#books li {
}
ul#books li .book-thumb {
background: #fff;
}

.slick-box-posts .slick-list,
.slick-box-videos .slick-list {
padding-right:10%!important;
padding-left: calc(49% - 640px)
}
.slick-box-posts .slick-list,
.slick-box-books .slick-list {
padding-top: 20px !important;
padding-bottom: 50px !important;
}
.slick-box-posts .slick-slide, 
.slick-box-books .slick-slide {
transition: all 1s ease-in-out 0s;
}
.slick-box-posts .slick-center img, 
.slick-box-books .slick-center  {
-moz-transform: scale(1.06);
-ms-transform: scale(1.06);
-o-transform: scale(1.06);
-webkit-transform: scale(1.06);
opacity: 1;
transform: scale(1.06);
transition: all 1s ease-in-out 0s;
z-index: 1;
}
.slick-box-books .book-title {
opacity: 0 ;
transition: all 0.3s ease-in-out 0s;
}

.slick-box-books .slick-center .book-title {
opacity: 1 ;
transition: all 0.3s ease-in-out 0s;
}
.book-title {
padding: 10px ;
}
body.home #headerInner #logo a,
body.home #headerInner a {
color: #fff;
}
.logo-ishin svg {
fill: currentColor;
width: 145px;
height: 30px;
transition: all 0.5s ease-in-out 0s;
vertical-align: bottom;
}
#logo svg {
fill: currentColor;
width: 100%;
height: 68px;
transition: all 0.5s ease-in-out 0s;
}
body.home #headerContainer.shrink #headerInner-sub ul li a,
body.home #headerContainer.shrink #logo a {
color: #000;
}
#headerContainer.shrink #logo svg {
height: 53px;
transition: all 0.5s ease-in-out 0s;
}

#publ {
background: #f7f7f7;
margin-top: 100px;
}

#tw {
text-align: center;
overflow: hidden;
margin: 50px 0;
background: #d9e2ea;
padding: 0 0 11px;
}
.tw-thumb {
position: relative;
overflow: hidden;
margin: 0 2px;
border-radius: 5px;
display: inline-block;

bottom: -30px;
opacity: 0;
transform: scale(1);
transition: all 1s ease-in-out 0s;
}
.tw-thumb.show {
bottom:0;
opacity:1;
transform: scale(1);
transition: all 1s ease-in-out 0s;
}

.tw-thumb img {
height: 14vw;
width: 19vw;
object-fit: cover;
object-position: top;
}
#tw .desc {
bottom: -95px;
position: absolute;
display: block;
background: #00000085;
width: 100%;
z-index: 1;
color: #fff;
padding: 10px;
text-align: left;
transition: all 0.5s ease-in-out 0s;
max-height: 95px;
overflow: hidden;
}
.tw-thumb:hover .desc {
bottom: 0 !important;
transition: all 0.5s ease-in-out 0s;
}
#tw .date {
font-size: 0.8em;
position: absolute;
top: 0;
right: 9px;
color: #ff8300;
}
#tw .desc a {
color: #fff;
text-decoration: none;
word-break: break-all;
}

.progress {
display: block;
width: 100%;
height: 5px;
overflow: hidden;
margin: 50px 0;
background-color: #f5f5f5;
background-image: linear-gradient(to right, black, black);
background-repeat: no-repeat;
background-size: 0 100%;
transition: background-size 0.7s ease-in-out;
}
.arrows-posts,
.arrows-videos {
width: 150px;
height: 50px;
position: relative;
right: 0;
z-index: 1;
display: block;
top: -50%;
background: #2d2d2d;
margin-left: calc(49% - 640px);
margin-top: 25px;
}

.arrows-ito {
width: 150px;
height: 50px;
position: relative;
right: 0;
z-index: 1;
display: block;
top: -50%;
background: #000;
margin-top: -25px;
}

.tlt {
opacity:0;
}

.post-type-archive-publications .double-wrapper:nth-of-type(2n+1),
.post-type-archive-magazines .double-wrapper:nth-of-type(2n+1) {
clear: both;	
}
body.page-profile th {
background: none;
border-bottom: 1px dotted #d1d1d1;
width: 20%;
}

.oitachi .boxes-wrapper {
margin: 0 0 80px 0;
}
.oitachi .two-thirds-wrapper {
padding: 0 30px;
}
.oitachi .boxes-wrapper:nth-child(2n) .triple-wrapper {
float: right;
}
.oitachi .year {
font-size: 5em;
line-height: 1em;
color: #eaeaea;
font-family: 'Montserrat', sans-serif;
}

body.page-policy .double-wrapper {
padding: 0 30px;
border-left: 5px solid #eaeaea;
margin-bottom: 50px;
}
body.page-policy .double-wrapper:nth-of-type(2n+1) {
clear: both;
}

body.page-policy .double-wrapper .num {
font-size: 5em;
line-height: 1em;
color: #eaeaea;
font-family: 'Montserrat', sans-serif;
}
body.page-policy .double-wrapper li {
background: #eee;
border-radius: 5px;
padding: 5px 5px 5px 14px;
}