/*
Theme Name: tukuru-home2026
Theme URI: https://wordpress.org/themes/twentytwelve/
Author: the WordPress team
Author URI: https://wordpress.org/
Template: twentytwelve
Description: Twenty Twelve Child Theme
Version: 1.0.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: light, gray, white, one-column, two-columns, right-sidebar, fluid-layout, responsive-layout, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
Text Domain: tkst-tkr-2012ch
*/

/*color
green #245236
blue #23438d
beige #f3ecdf
*/

/*////////////////////
COMMON
////////////////////*/

/* reset */
.entry-content img, .comment-content img, .widget img, img.header-image, .author-avatar img, img.wp-post-image {
    border-radius: 0;
    box-shadow: none;
}
img {
    margin: 0;
    padding: 0;
    vertical-align: top;
}
.entry-content ul,
.entry-content h2 {
    margin: 0;
}

body {
    background-color: #ffffff;
    font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
	color: #000;
    margin: 0;
    padding: 0;
}
div#page {
    margin: 0 auto;
    padding: 0;
    box-shadow: none;
    background: transparent;
}
#main {
    width: 96%;
    margin: 0;
    padding: 80px 2% 0 2%;
}
#masthead {
    width: 100%;
    height: 80px;
    margin: 0;
    padding: 0;
    background-color: rgba(255,255,255,0.88);
    box-shadow: 0 0 5px #cccccc;
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
}
span.tel-num {
    color: #e4007f;
    font-size: 16px;
    font-weight: bold;
}
.page-template-page-templatesfull-width-php h1.entry-title {
    display: none;
}
.site-content {
    margin: 0;
}
.site-content article {
    border: none;
}
article.page {
    margin-bottom: 0;
}
.archive-title,
.page-title,
.widget-title,
.entry-content th,
.comment-content th {
    font-size: 14px;
}
a.txtlinkbtn {
    display: inline-block;
    margin: 0;
	padding: 10px 20px;
    color: #000;
	background: transparent;
	font-size: 15px;
	text-decoration: none;
	border: #000 1px solid;
	border-radius: 8px;
	transition: .5s;
}
a.txtlinkbtn:visited {
	color: #000;
	background: #fff;
}
a.txtlinkbtn:hover,
a.txtlinkbtn:visited:hover {
	background: #000;
	color: #fff;
	transition: .5s;
}
a:focus {
    outline: none;
}

/* CSS animation */
@keyframes SlideUp {
    0% {
        opacity: 0;
        transform: translateY(70px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
.contbloc {
    opacity: 0;
}
.contbloc.is-show {
    opacity: 1;
    animation: SlideUp .7s ease-out;
}
.contblocfv {
    opacity: 0;
}
.contblocfv.is-show {
    opacity: 1;
    animation: SlideUp .7s ease-out;
}

/* form */
button,
input,
select,
textarea {
    font-size: 16px;
    padding: 10px;
}
textarea {
    width: 90%;
}

/* button */
input[type="submit"],
input[type="button"],
input[type="reset"],
article.post-password-required input[type=submit],
.bypostauthor cite span {
    color: #fff;
    font-size: 16px;
    background-color: #333;
    background-image: none;
    border: 1px solid #d2d2d2;
    border-radius: 0;
    box-shadow: 0 1px 2px rgba(64, 64, 64, 0.1);
    -webkit-appearance: none;
}
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
article.post-password-required input[type=submit]:hover {
    color: #fff;
    background-color: #666;
    background-image: none;
    -webkit-appearance: none;
}
button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
    color: #757575;
    background-color: #e1e1e1;
    background-image: none;
    box-shadow: inset 0 0 8px 2px #c6c6c6, 0 1px 0 0 #f4f4f4;
    -webkit-appearance: none;
}

/* header */
a#top {
    content: "";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
#head-lcwrap {
	display: flex;
	justify-content: space-between;
}
#head-lcwrap a hgroup {
    text-indent: -9999px;
    display: block;
    width: 150px;
    height: 60px;
    background-image: url(/images/header/header-logo.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 150px 60px;
    margin: 10px 0 0 5px;
    padding: 0;
	opacity: 1;
	transition: .5s;
}
#head-lcwrap a:hover hgroup {
    opacity: .7;
	transition: .5s;
}
#wide-header-gnavi {
    display: none;
}
#head-clistwrap {
    margin: 0;
    padding: 0;
	position: fixed;
    top: 0;
    right: 80px;
}
#head-clist {
    display: flex;
    margin: 0;
    padding: 0;
    list-style-type: none;
}
#head-clist li {
    text-align: center;
    margin: 0;
    padding: 0;
	width: 80px;
	font-size: 11px;
	color: #fff;
}
#head-clist li a {
	color: #fff;
	margin: 0;
    padding: 22px 0;
	width: 80px;
    line-height: 12px;
	display: block;
}
#head-clist li#head-document {
    background: #23438d;
}
#head-clist li#head-document a {
    text-decoration: none;
}
.menu-toggle {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    margin: 0;
    z-index: 9999;
    text-indent: -9999px;
}
.menu-toggle {
    width: 80px;
    height: 80px;
    background: url(/images/header/menu-toggle.png) 0 0 no-repeat;
    background-size: 80px 80px;
    border: none;
	transition: .5s;
}
.menu-toggle:hover,
.menu-toggle:focus {
    background: url(/images/header/menu-toggle.png) 0 0 no-repeat;
    background-size: 80px 80px;
	transition: .5s;
}
.menu-toggle:active,
.menu-toggle.toggled-on {
    background: url(/images/header/menu-toggle-on.png) 0 0 no-repeat;
    background-size: 80px 80px;
    border: none;
    box-shadow: none;
	transition: .5s;
}
#menu-header-gnavi {
    display: block;
    background-color: #fff;
    opacity: 0;
    width: 100%;
    height: 80%;
    height: -webkit-calc(100% - 80px);
    height: calc(100% - 80px);
    overflow-y: scroll;
    position: fixed;
    top: 80px;
	left: 100%;
    z-index: 9997;
    margin: 0;
    padding: 30px 0 10px;
    -webkit-overflow-scrolling: touch;
	transition: .5s;
}
#menu-header-gnavi.toggled-on {
    display: block;
    background-color: #fff;
    opacity: 0.88;
    width: 100%;
    height: 80%;
    height: -webkit-calc(100% - 80px);
    height: calc(100% - 80px);
    overflow-y: scroll;
    position: fixed;
    top: 80px;
	left: 0;
    z-index: 9997;
    margin: 0;
    padding: 30px 0 10px;
    -webkit-overflow-scrolling: touch;
	transition: .5s;
	border-bottom: 0;
}
#menu-header-gnavi li {
    display: block;
    font-size: 14px;
    text-align: left;
    margin: 0;
    padding: 10px 4%;
}
#menu-header-gnavi li:last-child {
    border-bottom: 0;
	margin-bottom: 40px;
}
#menu-header-gnavi li ul li:last-child {
    border-bottom: 0;
	margin-bottom: 0;
}
#menu-header-gnavi li a {
    line-height: 18px;
    color: #000;
    text-decoration: none;
    text-transform: none;
}
#menu-header-gnavi li.current-menu-item a {
    color: #245236;
	font-weight: bold;
}
#menu-header-gnavi li.current-menu-item ul li a {
    color: #000;
}
#menu-header-gnavi li.current_page_parent a {
    color: #245236;
}
#menu-header-gnavi li.current_page_parent ul li a {
    color: #000;
}
#menu-header-gnavi li.current_page_parent ul li.current-menu-item a {
    color: #245236;
}
#menu-header-gnavi li ul {
    margin: 15px 0 0 10px;
    padding: 0;
    height: auto;
    width: auto;
}
#menu-header-gnavi li ul li {
    display: inline-block;
    margin: 0 5px 0 0;
    padding: 0;
    height: auto;
    width: auto;
    border-bottom: none;
    box-shadow: none;
}
#menu-header-gnavi li ul li a {
    font-size: 13px;
    font-weight: 500;
    color: #000;
    line-height: 26px;
    margin: 0;
    padding: 0 0 0 18px;
    background: url(/images/header/menu-child-bg.png) left center no-repeat;
    background-size: 15px 15px;
    border-bottom: none;
}
#menu-header-gnavi li ul li a:hover {
    background: url(/images/header/menu-child-bg.png) left center no-repeat;
    background-size: 15px 15px;
}
#menu-header-gnavi li ul li a:focus {
    background: url(/images/header/menu-child-bg.png) left center no-repeat;
    background-size: 15px 15px;
}

/* gototop */
.gototop {
    display: block;
    position: fixed;
    bottom: 108px;
    right: 3%;
    margin: 0;
    width: 50px;
    height: 50px;
    background: url(/images/common/gototop.png) center center no-repeat;
    background-size: 50px 50px;
    z-index: 9998;
}
.gototop:hover {
    background: url(/images/common/gototop-on.png) center center no-repeat;
	background-size: 50px 50px;
}

/* ft-contactlink */
.ft-contactlinkbloc {
    margin: 0 calc(50% - 50vw);
	padding: 50px 0;
    width: 100vw;
    background: #f3ecdf;
	text-align: center;
}

/* ft-iglink */
.ft-iglinkbloc {
    margin: 0 calc(50% - 50vw);
	padding: 50px 0;
    width: 100vw;
    background: #fff;
	text-align: center;
}
.ft-iglinkbloc ul {
    display: flex;
	justify-content: center;
}
.ft-iglinkbloc ul li + li {
    margin: 0 0 0 30px;
}
.ft-iglinkbloc .ft-ig {
    display: block;
    width: 30px;
	height: 30px;
    text-indent: -9999px;
	background: url(/images/footer/ft-ig-color.png) 0 0 no-repeat;
	background-size: 30px 30px;
	opacity: 1;
	transition: .5s;
}
.ft-iglinkbloc .ft-ig:hover {
	opacity: .7;
	transition: .5s;
}

/* footer */
.tkr-footerwrap {
    margin: 0 calc(50% - 50vw);
	padding: 50px 0;
    width: 100vw;
    background: #000;
}
.tkr-footer {
    max-width: 1000px;
    margin: 0 auto;
	color: #fff;
}
.ft-iswrap {
    display: block;
	margin: 0 0 40px;
	padding: 0;
}
.ft-info {
    margin: 0 0 40px 0;
	padding: 0;
}
.ft-info dl {
    margin: 0 auto;
	padding: 0;
	width: fit-content;
}
.ft-info dl dt {
    margin: 0;
	padding: 0;
}
.ft-info dl dt a {
    display: block;
    margin: 0;
	padding: 0;
	width: 200px;
	height: 80px;
	text-indent: -9999px;
	background: url(/images/footer/footer-logo.png) 0 0 no-repeat;
	background-size: 200px 80px;
	opacity: 1;
	transition: .5s;
}
.ft-info dl dt a:hover {
	opacity: .7;
	transition: .5s;
}
.ft-info dl dd {
    margin: 5px 0 0 0;
	padding: 0;
	line-height: 20px;
}
.ft-info dl dd a {
    display: inline-block;
    margin: 0;
	padding: 0 0 0 22px;
	background: url(/images/footer/ft-outerlink.png) 0 0 no-repeat;
	background-size: 20px 20px;
	color: #fff;
	text-decoration: none;
	opacity: 1;
	transition: .5s;
}
.ft-info dl dd a:hover {
	opacity: .7;
	transition: .5s;
}
.ft-sitemap {
    margin: 0 auto;
	padding: 0;
	width: 200px;
	font-size: 0;
}
.ft-sitemap ul {
    margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}
.ft-sitemap li {
    margin: 8px 0 0;
	padding: 0;
	line-height: 20px;
	display: inline-block;
	width: 200px;
}
.ft-sitemap li.nest {
    margin: 8px 0 0 15px;
	width: 185px;
}
.ft-sitemap li a {
    font-size: 14px;
    color: #fff;
	text-decoration: none;
	opacity: 1;
	transition: .5s;
}
.ft-sitemap li a:hover {
	opacity: .7;
	transition: .5s;
}
.ft-lcwrap {
    margin: 0;
	padding: 0;
	display: block;
	text-align: center;
}
.ft-link {
    margin: 0 0 15px;
	padding: 0;
	line-height: 20px;
}
.ft-link .ft-ig:hover {
	opacity: .7;
	transition: .5s;
}
.ft-link a {
    color: #fff;
	text-decoration: none;
	opacity: 1;
	transition: .5s;
}
.ft-link a:hover {
	opacity: .7;
	transition: .5s;
}
.ft-link a+a {
    margin: 0 0 0 20px;
}
.ft-lcwrap small {
    font-size: 12px;
    line-height: 20px;
}


/*////////////////////
TOP
////////////////////*/
/* slider1 */
.ts1wrap {
    margin: 0 calc(50% - 50vw);
    padding: 0;
    width: 100vw;
    position: relative;
}
.ts1wrap img {
    max-width: none;
    width: auto;
    height: 100vw;
    max-height: 1000px;
    margin: 0 0 0 -50vw;
    border-radius: 0;
}
.ts1wrap li.slick-slide {
    margin: 0;
}
p.catchcopy {
  position: absolute;
  top: 23%;
  left: 5%;
  height: 77%;
}
p.catchcopy img {
  height: 100%;
  margin: 0;
}
.ts2wrap {
    margin: 0 calc(50% - 50vw);
    padding: 0;
    width: 100vw;
}

/* bloc */
.bgbeige {
    margin: 0 calc(50% - 50vw);
    padding: 0;
    width: 100vw;
    background: #f3ecdf;
}
.bgwhite {
    margin: 0 calc(50% - 50vw);
    padding: 0;
    width: 100vw;
    background: #fff;
}
.innerbloc {
    max-width: 940px;
    margin: 0 auto;
    padding: 40px 20px;
}
h2.bloctitle {
    margin: 0 0 25px 0;
    padding: 0;
}
h2.bloctitle span.en {
    font-size: 18px;
    display: inline-block;
    margin: 0;
    padding: 0 15px;
}
h2.bloctitle span.jp {
    font-size: 14px;
    display: inline-block;
    border-top: #000 1px solid;
    margin: 0;
    padding: 5px 15px 0;
}
.entry-content p.morebtn {
    text-align: right;
	margin: 20px 0 0 0;
}

/* topmenu */
p.topmenubanner {
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
}
ul.topmenulist {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
ul.topmenulist li {
    margin: 0 0 20px;
    padding: 0;
    width: 100%;
}
ul.topmenulist li:last-child {
    margin-bottom: 0;
}
p.topmenubanner a,
ul.topmenulist li a {
    opacity: 1;
    transition: .5s;
}
p.topmenubanner a:hover,
ul.topmenulist li a:hover {
    opacity: .7;
    transition: .5s;
}

/* newslist */
ul.newslist {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
}
ul.newslist li {
    margin: 0 2% 15px;
    padding: 0;
    width: 96%;
}
ul.newslist li:last-child {
    margin-bottom: 0;
}
dl.newschlist {
    margin: 0;
    padding: 0 5px 5px;
    position: relative;
    width: auto;
    display: flex;
    border-bottom: #000 1px solid;
    background: url(/images/top/bg-newschlist.png) right 2px no-repeat;
    background-size: 20px 20px;
}
dl.newschlist dt.newsdate {
    margin: 0 7px 0 0;
    padding: 0;
    display: block;
}
dl.newschlist dd.newscat {
    margin: 0 7px 0 0;
    padding: 0 5px;
    display: block;
    background: #666;
    color: #fff;
    flex-shrink: 0;
    border: 0;
}
dl.newschlist dd.newstitle {
    margin: 0;
    padding: 0;
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
dl.newschlist dd.newslink a {
    text-indent: -9999px;
    margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	display: block;
	background: #fff;
	opacity: 0;
	transition: .5s;
}
dl.newschlist dd.newslink a:hover {
	opacity: .3;
	transition: .5s;
}

/* bloglist.interviewlist */
ul.bloglist {
    display: flex;
	flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style-type: none;
}
ul.bloglist li {
    width: 48%;
    margin: 0 1% 15px;
    padding: 0;
}
ul.bloglist li:nth-child(n+3) {
    margin-bottom: 0;
}
dl.blogchlist {
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
}
dl.blogchlist dt.blogimg {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    aspect-ratio: 4 / 3;
}
dl.blogchlist dt.blogimg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    vertical-align: top;
}
dl.blogchlist dd.blogtitle {
    margin: 0;
    padding: 0 5px;
    background: #000;
    color: #fff;
    font-size: 13px;
    line-height: 40px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
dl.blogchlist dd.bloglink {
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
}
dl.blogchlist dd.bloglink a {
    text-indent: -9999px;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: #fff;
    opacity: 0;
    transition: .5s;
}
dl.blogchlist dd.bloglink a:hover {
    opacity: .3;
    transition: .5s;
}

/* stylelist */
ul.topstylelist {
    width: 80%;
    margin: 0 10% 60px;
    padding: 0;
    list-style-type: none;
}
ul.topstylelist li {
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
}
ul.topstylelist li:last-child {
    margin-bottom: 0;
}
ul.topstylelist li a {
    opacity: 1;
    transition: .5s;
}
ul.topstylelist li a:hover {
    opacity: .7;
    transition: .5s;
}

/* slider2 */
ul.ts2 li a {
    opacity: 1;
	transition: .5s;
}
ul.ts2 li a:hover {
    opacity: .7;
	transition: .5s;
}

/* warrantylist */
ul.topwarrantylist {
    width: 100%;
    margin: 0%;
    padding: 0;
    list-style-type: none;
	display: flex;
	justify-content: space-between;
}
ul.topwarrantylist li {
    width: 32%;
    margin: 0;
    padding: 0;
}


/*////////////////////
CONCEPT
////////////////////*/


/*////////////////////
LINEUP
////////////////////*/
ul.lineuplist {
    width: 80%;
    margin: 40px 10% 0;
    padding: 0;
    list-style-type: none;
}
ul.lineuplist li {
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0;
}
ul.lineuplist li:last-child {
    margin-bottom: 0;
}
ul.lineuplist li a {
    opacity: 1;
    transition: .5s;
}
ul.lineuplist li a:hover {
    opacity: .7;
    transition: .5s;
}


/*////////////////////
COMPANY
////////////////////*/
dl.imgtxtlist.msglist dt:after {
    content: '代表取締役 山下 克樹';
    display: block;
    color: #fff;
    position: absolute;
    right: 30px;
    bottom: 30px;
    margin: 0;
}
dl.cplist {
    display: flex;
    margin: 0;
    padding: 15px 10px;
    border-top: #000 1px solid;
    align-items: flex-start;
}
dl.cplist.last {
    margin: 0;
    border-bottom: #000 1px solid;
}
dl.cplist dt {
    width: 120px;
    min-width: 120px;
    margin: 0 20px 0 0;
    padding: 5px 10px;
    border-left: #000 3px solid;
}
dl.cplist dd {
    margin: 0;
    padding: 5px 10px;
}
.mapwrap {
    width: 100%;
    margin: 0;
    padding: 66.6% 0 0 0;
    position: relative;
}
.mapwrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}


/*////////////////////
LINEUP
////////////////////*/
.lineupimg {
    width: 100vw;
    aspect-ratio: 3/2;
    margin: 0 calc(50% - 50vw) 40px;
    padding: 0;
    position: relative;
    background-size: cover;
    background-position: center center;
}
.lineupimg .lineuplogo {
    width: 30%;
    max-width: 300px;
    height: auto;
    margin: 0;
    padding: 0;
    position: absolute;
    bottom: 10%;
    left: 5%;
}
.lineupimg.hiraya {
    background-image: url(/images/hiraya/hiraya-img01.jpg);
}
.lineupimg.mannaka {
    background-image: url(/images/mannaka/mannaka-img01b.jpg);
}
.lineupimg.simplenote {
    background-image: url(/images/simplenote/simplenote-img01.jpg);
}
.lineupimg.aiti {
    background-image: url(/images/aiti/aiti-img01.jpg);
}
.lineupimg.kota {
    background-image: url(/images/kota/kota-img01.jpg);
}
.lineupimg.sopo {
    background-image: url(/images/sopo/sopo-img01.jpg);
}
.lineupimg.liite {
    background-image: url(/images/liite/liite-img01.jpg);
}
.lineupimg.perinne {
    background-image: url(/images/perinne/perinne-img01.jpg);
}
h3.spetitle {
    font-size: 17px;
	line-height: 40px;
    margin: 50px 0 0;
	padding: 0 20px;
	color: #fff;
	background: #000;
}
ul.lineupsplist {
    display: flex;
    list-style-type: none;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
ul.lineupsplist li {
    width: 48%;
    margin: 40px 1% 15px;
    padding: 0;
}
ul.lineupsplist li dl {
    margin: 0;
    padding: 0;
}
ul.lineupsplist li dl dt {
    margin: 0;
    padding: 0;
}
ul.lineupsplist li dl dd.lspname {
    font-size: 15px;
    font-weight: bold;
    line-height: 40px;
    margin: 0;
    padding: 0 10px;
}
ul.lineupsplist li dl dd.lsptxt {
    font-size: 13px;
    line-height: 24px;
    margin: 0;
    padding: 0 10px;
}
dl.imgtxtlist.sn {
    margin: 60px 0 0;
}
ul.snplanlist {
    width: 80%;
    margin: 0 10%;
    padding: 0;
    list-style-type: none;
}
ul.snplanlist li {
    width: 100%;
    margin: 0 0 50px 0;
    padding: 0;
}
ul.snplanlist li:last-child {
    margin-bottom: 0;
}
strong.snatt {
    color: #245236;
}


/*////////////////////
CONTACT
////////////////////*/
.wpcf7 input {
    max-width: 90%;
}
.wpcf7 textarea {
    max-width: 90%;
}
.cf-must {
    color: #fff;
    font-size: 12px;
	margin: 0 0 0 8px;
	padding: 4px;
    background-color: #cc0033;
}
.cf-notmust {
    color: #fff;
    font-size: 12px;
	margin: 0 0 0 8px;
	padding: 4px;
    background-color: #336699;
}
.entry-content p.submit-btn {
    text-align: center;
	margin-left: 72px;
}
.contact-message {
    font-size: 15px;
    margin: 0 2%;
    padding: 20px;
    border: #e4007f 1px solid;
    border-radius: 5px;
    background-color: #ffecf7;
}
.grecaptcha-badge {
    margin: auto;
}


/*////////////////////
PRIVACY POLICY
////////////////////*/
.entry-content p.pptxt {
    margin: 0 2% 40px;
    padding: 15px;
    list-style-type: none;
    border: #000 1px solid;
}
.entry-content dl.pplist {
    margin: 0 2% 40px;
    padding: 0;
    list-style-type: none;
}
dl.pplist dt {
    margin: 0 0 10px 0;
    padding: 0 0 0 10px;
    border-bottom: #000 1px dotted;
    font-size: 15px;
    line-height: 30px;
}
dl.pplist dd {
    margin: 0 0 30px 0;
    padding: 0 0 0 15px;
    font-size: 14px;
	line-height: 30px;
}
dl.pplist dd:last-child {
    margin-bottom: 0;
}


/*////////////////////
SITEMAP
////////////////////*/
ul.sitemaplist {
    margin: 0 2% 40px;
    padding: 15px 0 0 0;
    list-style-type: none;
}
.sitemaplist li {
    margin: 0 0 15px 0;
    padding: 0 0 15px 0;
    border-bottom: #cccccc 1px dotted;
    font-size: 15px;
    line-height: 30px;
}
.sitemaplist li a {
    margin: 0;
    padding: 0 0 0 23px;
    background: url(/images/sitemap/sitemaplist-bg.png) 0 0 no-repeat;
    background-size: contain;
    box-shadow: none;
}
.sitemaplist li ul {
    margin: 0;
    padding: 15px 0 0 0;
    list-style-type: none;
    font-size: 0;
}
.sitemaplist li ul li {
    display: inline-block;
    margin: 0 0 0 30px;
    padding: 0;
    border-bottom: none;
    font-size: 15px;
    line-height: 30px;
}
.sitemaplist li ul li a {
    margin: 0;
    padding: 0 0 0 23px;
    background: url(/images/sitemap/sitemaplist-bg.png) 0 0 no-repeat;
    background-size: contain;
    box-shadow: none;
}


/*////////////////////
BREADCRUMB
////////////////////*/
.breadcrumb {
    margin: 0 calc(50% - 50vw);
	background: #eee;
	height: 40px;
}
.site-content .breadcrumb a {
    font-size: 14px;
    text-decoration: none;
    color: #000;
	line-height: 40px;
    font-weight: bold;
    transition: .5s;
}
.site-content .breadcrumb a:visited {
    text-decoration: none;
    color: #000;
}
.site-content .breadcrumb a:hover {
    color: #245236;
    transition: .5s;
}
.site-content .breadcrumb .bcnow {
    color: #245236;
	font-weight: bold;
}
.bclist {
    list-style-type: none;
    margin: 0 auto;
    padding: 0;
	max-width: 940px;
	height: 40px;
	text-overflow: ellipsis;
    white-space: nowrap;
	overflow: hidden;
}
.bclist li {
    display: inline-block;
    margin: 0 0 0 10px;
    padding: 0 0 0 20px;
    vertical-align: center;
    line-height: 20px;
	background: url(/images/common/bclist-bg.png) left center no-repeat;
	background-size: 10px 20px;
}
.bclist li:first-child {
    padding-left: 0;
	background: none;
}


/*////////////////////
PAGE
////////////////////*/
p.pimg {
    margin: 0 calc(50% - 50vw) 40px;
	padding: 0;
	width: 100vw;
	height: 100px;
	background-size: cover;
	text-indent: -9999px;
}
p.pimg.concept {
    background-image: url(/images/pimg/pimg-concept.jpg);
}
p.pimg.newbuilding {
    background-image: url(/images/pimg/pimg-newbuilding.jpg);
}
p.pimg.lineup {
    background-image: url(/images/pimg/pimg-lineup.jpg);
}
p.pimg.regeneration {
    background-image: url(/images/pimg/pimg-regeneration.jpg);
}
p.pimg.renovation {
    background-image: url(/images/pimg/pimg-renovation.jpg);
}
p.pimg.company {
    background-image: url(/images/pimg/pimg-company.jpg);
}
p.pimg.contact {
    background-image: url(/images/pimg/pimg-contact.jpg);
}
p.pimg.event {
    background-image: url(/images/pimg/pimg-event.jpg);
}
p.pimg.news {
    background-image: url(/images/pimg/pimg-news.jpg);
}
p.pimg.blog {
    background-image: url(/images/pimg/pimg-blog.jpg);
}
p.pimg.privacy {
    background-image: url(/images/pimg/pimg-privacy.jpg);
}
p.pimg.sitemap {
    background-image: url(/images/pimg/pimg-sitemap.jpg);
}
p.pimg.warranty {
    background-image: url(/images/pimg/pimg-warranty.jpg);
}
.innerbloc.first {
    padding: 0 20px 40px;
}
h2.contbloctitle {
    display: block;
    margin: 0 0 30px 0;
    padding: 0;
    font-size: 17px;
	line-height: 1.6;
}
h2.contbloctitle span {
    font-size: 12px;
}
dl.imgtxtlist {
    display: block;
    margin: 0;
    padding: 0;
}
dl.imgtxtlist.mt60 {
    margin: 60px 0 0 0;
}
dl.imgtxtlist dt {
    display: block;
    width: 70%;
    margin: 0 auto 30px;
    padding: 0;
    position: relative;
}
dl.imgtxtlist dt video {
    display: block;
    width: 100%;
	height: auto;
    margin: 0;
    padding: 0;
}
dl.imgtxtlist dt:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: transparent;
    border: #000 1px solid;
    position: absolute;
    left: -15px;
    top: -15px;
    margin: 0;
}
dl.imgtxtlist.noline dt:before {
    display: none;
}
dl.imgtxtlist dd {
    display: block;
    width: 100%;
}
dl.imgtxtlist dd strong {
    font-size: 16px;
}
#page .site-content article {
    margin-bottom: 0;
	padding-bottom: 0;
}
.innerbloc p.contbloctxt {
    margin-bottom: 0;
}


/*////////////////////
POST
////////////////////*/
article.post {
    border: #e6e6e6 1px solid;
    padding: 15px;
}
article.post.catview {
    display: flex;
	padding: 0;
	position: relative;
	align-items: center;
}
article.post.catview p.postimg {
    margin: 0 3% 0 0;
	padding: 0;
	width: 22%;
	overflow: hidden;
}
article.post.catview p.postimg img {
    margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
	object-fit: cover;
}
article.post.catview .entry-header .entry-title {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
article.post.catview .entry-header {
    margin: 0;
	padding: 0;
	width: 75%;
	border-bottom: 0;
}
article.post.catview .postlink a {
    position: absolute;
    margin: 0;
	padding: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    display: block;
	vertical-align: middle;
	background: #245236;
	color: #fff;
	text-indent: -9999px;
	opacity: 0;
	transition: .5s;
}
article.post.catview .postlink a:hover {
	opacity: .7;
	transition: .5s;
}
article.post .entry-content {
    font-size: 15px;
}
.entry-header {
    margin: 0 0 30px 0;
	padding: 10px;
	border-bottom: #000 1px solid;
}
.entry-header .entry-title {
    font-size: 16px;
    font-weight: bold;
    color: #000;
}
.entry-header .entry-date {
    font-size: 14px;
    margin: 0;
}
.site-content nav {
    margin: 0 0 40px 0;
}
#page .site-content article.post {
    margin-bottom: 40px;
}
.innerbloc p {
    margin: 0;
    margin: 0 0 1.714285714rem;
    line-height: 1.714285714;
}
dl.imgtxtlist dt img {
    max-width: 100%;
}
dl.imgtxtlist dd {
    line-height: 1.714285714;
    margin-bottom: 24px;
    margin-bottom: 1.714285714rem;
}


/*////////////////////
interview
////////////////////*/
.entry-content p.interviewtopimg {
    margin: 0 3% 40px;
    padding: 0;
}
h2.interviewcopy {
    font-size: 17px;
    font-weight: bold;
    color: #245236;
    margin: 0 3% 10px;
    padding: 0;
}
p.interviewinfo {
    font-size: 14px;
    margin: 0 3% 30px;
    padding: 0;
}
p.interviewtxt {
    font-size: 15px;
    margin: 0 3% 60px;
    padding: 0;
}
div.interviewimglistwrap {
    display: block;
    margin: 0 4% 60px;
    padding: 0;
}
p.interviewimg {
    width: 100%;
    margin: 0 0 20px;
    padding: 0;
}
div.interviewlistwrap {
    width: 100%;
    margin: 0;
    padding: 0;
}
div.interviewlistwrap dl dt {
    margin: 0 0 5px;
    padding: 0;
}
div.interviewlistwrap dl dd {
    margin: 0;
    padding: 0;
}
dl.interviewtkr {
    margin: 0 0 20px;
    padding: 0;
}
dl.interviewclient {
    margin: 0;
    padding: 0;
}
dl.interviewclient dt {
    color: #23438d;
}
p.interviewmatome {
    font-size: 15px;
    margin: 0 3% 40px;
    padding: 50px 0 0;
    background: url(/images/interview/bg-interviewmatome.png) center top no-repeat;
    background-size: 40px 40px;
}


/*////////////////////
RESPONSIVE
////////////////////*/
@media screen and (min-width: 420px) {
    #head-lcwrap a hgroup {
        width: 200px;
        height: 80px;
        background-size: 200px 80px;
        margin: 0 0 0 10px;
    }
	.ft-sitemap {
	    width: 400px;
    }
	.ft-sitemap ul {
	    width: 400px;
		height: 280px;
    }
}
@media screen and (min-width: 600px) {
    .site-content {
        float: none;
        width: 100%;
		overflow: visible;
    }
	.site {
        overflow: visible;
    }
    .main-navigation li ul {
        margin: 0;
        padding: 0;
        position: static;
        top: 100%;
        z-index: 1;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 1px);
    }
    p.topmenubanner {
        width: 60%;
        margin: 0 20% 20px;
    }
    ul.topmenulist li {
        margin: 0 2% 20px;
        width: 46%;
    }
	ul.newslist li {
        width: 46%;
    }
	ul.newslist li:nth-child(3) {
        margin-bottom: 0;
    }
	ul.bloglist li {
        width: 23%;
		margin-bottom: 0;
    }
	/* COMPANY */
    dl.imgtxtlist {
        display: flex;
        align-items: center;
		justify-content: space-between;
    }
	dl.imgtxtlist.imgright {
	    flex-direction: row-reverse;
	}
    dl.imgtxtlist dt {
        width: 45%;
        margin: 0;
    }
    dl.imgtxtlist dd {
        width: 50%;
    }
	/* lineup */
	.lineupimg {
        aspect-ratio: unset;
        height: 400px;
    }
	ul.lineupsplist li {
        width: 23%;
        margin: 40px 1% 0;
    }
}
@media screen and (min-width: 800px) {
    div.interviewimglistwrap {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }
    div.interviewimglistwrap.imgright {
        flex-direction: row-reverse;
    }
    p.interviewimg {
        width: 45%;
        margin: 0;
        padding: 0;
    }
    div.interviewlistwrap {
        width: 50%;
        margin: 0;
        padding: 0;
    }
}
@media screen and (min-width: 1000px) {
    .main-navigation ul.nav-menu, .main-navigation div.nav-menu > ul {
        display: block;
    }
    #masthead {
        width: 100vw;
        height: 80px;
        margin: 0;
        padding: 0;
    }
	#head-lcwrap {
	    max-width: 1000px;
		margin: 0 auto;
		padding: 0;
		display: flex;
        justify-content: space-between;
		align-items: center;
    }
    #head-lcwrap #site-navigation {
        margin: 0;
		display: none;
    }
    #head-clistwrap {
	    position: relative;
        right: 0;
    }
    .menu-toggle {
        display: none;
    }
    #wide-header-gnavi {
        margin: 0;
        padding: 0;
        border: none;
        display: flex !important;
        align-items: flex-start;
		flex-wrap: wrap;
        position: relative;
		width: 640px;
        z-index: 998;
		background-color: transparent;
        top: 0;
        left: 0;
		transition: none;
	}
    #wide-header-gnavi li {
        display: inline-flex;
        margin: 0 30px 0 0;
        padding: 0;
        font-size: 13px;
		line-height: 28px;
        border-bottom: 0;
    }
    #wide-header-gnavi li a {
        display: block;
        color: #000;
        margin: 0;
	    padding: 0;
		line-height: 28px;
		text-decoration: none;
		opacity: 1;
	    transition: .5s;
    }
	#wide-header-gnavi li a:hover {
	    opacity: .7;
	    transition: .5s;
	}
	#wide-header-gnavi li.bcnow a {
        color: #245236;
		font-weight: bold;
    }

	/* footer */
	.ft-iswrap {
        display: flex;
	    align-items: flex-start;
	    flex-wrap: nowrap;
	    justify-content: space-between;
	    margin: 0 0 40px 10px;
	    padding: 0;
    }
	.ft-info {
        margin: 0;
    }
	.ft-sitemap {
	    width: 50%;
		margin: 0;
		display: flex;
	    flex-wrap: wrap;
	    gap: 0 0;
    }
	.ft-sitemap {
	    width: 50%;
    }
	.ft-sitemap ul {
	    width: 100%;
    }
	.ft-sitemap li {
	    width: 50%;
    }
    .ft-sitemap li.nest {
        margin: 8px 0 0 3%;
	    width: 47%;
    }
	.ft-lcwrap {
	    display: flex;
	    justify-content: space-between;
    }
	.ft-link {
	    margin: 0 0 0 10px;
	}
	.ft-lcwrap small {
		margin: 0 10px 0 0;
	}
	/* gototop */
    .gototop {
        right: calc( 50% - 486px );
    }
	/* slider */
	.ts1wrap img {
        margin: 0 0 0 calc((100vw - 2000px) / 2);
    }
	p.catchcopy {
        left: calc((100vw - 1000px) / 2 + 50px);
    }
	/* top*/
    ul.topmenulist li {
        margin: 0 1.5% 20px;
        width: 30%;
    }
    ul.topmenulist li:nth-child(4) {
        margin-bottom: 0;
    }
	/* lineup */
	.lineupimg .lineuplogo {
        left: calc( (100vw - 1000px) / 2 + 50px);
    }
}
@media screen and (min-width: 2000px) {
    .ts1wrap img {
        margin: 0 auto;
    }
}

/* jetpack */
#jp-relatedposts .jp-relatedposts-items-visual .jp-relatedposts-post img.jp-relatedposts-post-img, #jp-relatedposts .jp-relatedposts-items-visual .jp-relatedposts-post span {
    height: auto;
}
