@charset "utf-8";
/*
Theme Name: tanimoto_child
Template: tanimoto
Author: t-labo
Author URI: https://takai-laboratory.com/
*/

/*========================*/

main { overflow: hidden; }
/*fade
***************/
/* 画面外にいる状態 */
.fadein {
    opacity : 0;
    transform : translate(0, 150px);
    transition : all 1500ms;
}
 
/* 画面内に入った状態 */
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


/******************************
HEADER
******************************/
header {max-width: 100%; color: #fff; position: relative; z-index: 20;}
header h1 {font-size: 12px; font-weight: bold;}
header h2 {font-size: 35px; font-weight: bold; line-height: 1; margin-top: 5px;}
header .min {font-size: 12px; font-weight: bold; letter-spacing: 2px; line-height: 1; margin-top: 10px;}
.main_nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 0;
}
.main_nav .min {font-size: 10px; color: #db9218;}
.navall {background-color: #fff;}
.main_nav li {border-left: 1px solid #D8D8D8; padding: 0 28px;}
.main_nav li:nth-child(7) {border-right: 1px solid #D8D8D8;}

header .over,header .moveover,header .logo,header .movelogo,header .title,header .overtitle,header .ul01,header .moveul01 {
	-moz-transition: -moz-all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    transition: all 0.5s ease;
	transform-origin: top left;
}
header .over {position: fixed; top: 0; left: 0; right: 0; height: 100px; z-index: 20;}
header .moveover {background-color: #fff;}
header .logo {transform-origin: top left; width: 139px; margin-top: 40px; transform:scale(1);}
header .movelogo {transform:scale(.71); transform-origin: top left;}
header .title {opacity: 0;}
header .movetitle {opacity: 1; margin-left: 20px;}
header .ul01 {color: #fff; margin-left: auto; font-weight: bold;}
header .moveul01 {color: #000; margin-left: auto;}
header .ul01 li {padding: 50px 50px 50px 0; line-height: 1; font-size: 16px;}
/*
slider
*************/
.bx-wrapper {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.bx-viewport {overflow: inherit!important;}
.bx-wrapper {
    margin:0 auto;
    width:100%;
    max-width: 1270px;
}
.bx-wrapper img {
    width: 100%;
    object-fit: cover;
	font-family: 'object-fit: cover;'
}
.slide_box li {
	box-sizing: border-box;
}
header .mail {position: absolute; bottom: 12px; right: 0;}
/*========================
index
========================*/
.main {position: relative; min-width: 1900px; left: 50%; margin-left: -950px; margin-top: -130px;}
#index .box01 {padding: 50px 0; background: url(img/index/box01_bg.jpg); background-attachment: fixed; color: #fff; background-size: cover;}
#index .box01 .con {max-width: 1000px; margin: 0 auto; display: flex; justify-content: flex-start; align-items: center; font-weight: 500; font-size: 16px; line-height: 2;}
#index .box01 span {font-size: 20px; font-weight: bold;}
#index .box01 h2 {font-size: 33px; font-weight: 500; letter-spacing: 10px; color: #fff; font-family: "Sawarabi Mincho"; margin-bottom: 5px;}
#index .box01 .right {margin-left: 40px;}

#index .box015 {background: url(img/index/box015_bg.jpg)center center no-repeat; padding: 50px 0; display: flex; align-items: flex-start; justify-content: center;}
#index .box015 a:nth-of-type(n + 2) {margin-left: 50px;}

#index .box02 {background: url(img/index/box02_bg.jpg)top center no-repeat; padding: 50px 0 80px; background-size: cover;}
#index .box02 .inner {display: flex; justify-content: space-between; max-width: 1000px; margin: 0 auto;}
#index .box02 p {margin: 20px 0;}
#index .box02 ul li {margin-bottom: 10px;}
#index .box02 ul li:nth-child(3) {margin-bottom: 0;}
#index .box02 .title02 {margin-top: 9px;}
#index .box02 .ul02 li {display: flex; justify-content: flex-end;}
#index .box03 {padding: 60px 0 50px; background: url(img/index/box03_bg.jpg)top center repeat-y; position: relative;}
#index .box03 .work_no {
	min-width: 30px;
	min-height: 53px;
}
#index .box03 .work_item:nth-child(1) .work_no { background: url(img/index/box03_no01.png) top center no-repeat; }
#index .box03 .work_item:nth-child(2) .work_no { background: url(img/index/box03_no02.png) top center no-repeat; }
#index .box03 .work_item:nth-child(3) .work_no { background: url(img/index/box03_no03.png) top center no-repeat; }
#index .box03 .work_item:nth-child(4) .work_no { background: url(img/index/box03_no04.png) top center no-repeat; }
#index .box03 .work_item:nth-child(5) .work_no { background: url(img/index/box03_no05.png) top center no-repeat; }
#index .box03 .work_item:nth-child(6) .work_no { background: url(img/index/box03_no06.png) top center no-repeat; }
#index .box03 .work_item:nth-child(7) .work_no { background: url(img/index/box03_no07.png) top center no-repeat; }
#index .box03 .work_item:nth-child(8) .work_no { background: url(img/index/box03_no08.png) top center no-repeat; }
#index .box03 .btn {margin: 30px auto 0; width: 250px;}

#index .box03 .bdr {content: ""; width: 100px; margin: 0 auto; border-bottom: 2px solid #000; margin-bottom: 30px;}
#index .box03 .h2_icon {margin: 0 auto;}
#index .box03 h2 {text-align: center; font-size: 36px; font-weight: bold; font-family: "Sawarabi Mincho"; letter-spacing: 5px;}
#index .box03 h3 {font-size: 16px; font-weight: bold;}
#index .work_item {max-width: 280px; min-width: 280px; margin-bottom: 16px;}
#index .work_img {box-sizing: border-box; object-fit: cover; height: 190px; overflow: hidden; margin-bottom: 10px;}
#index .box03 .work_txt_box {padding:0 10px 10px;}
#index .box04 {padding-bottom: 50px; background: url(img/index/box04_bg.jpg)top center repeat; box-sizing: border-box; border-bottom: 1px solid #000;}
#index .box04 .inner {display: flex; justify-content: space-between; align-items: flex-start; max-width: 1000px; margin: 50px auto 0;}
#index .box04 .bnr {margin: 0 auto;}
#index .box04 .bnr_area {background: url(img/index/box04_bg01.jpg)top center repeat; box-sizing: border-box; border-top: 1px solid #000; border-bottom: 1px solid #000; padding: 50px 0;}
#index .box04 .bnr_area a {max-width: 1200px; margin: 0 auto;}
#index .box04 .con {box-sizing: border-box; border: 1px solid #505050; background: url(img/index/box04_con_bg.gif)top left repeat; padding: 33px 30px; font-weight: 500; text-align: center; font-size: 15px; line-height: 2;}
#index .box04 .con span {color: #1b6daf;}
#index .box04 .con .btn {margin: 50px auto 0;}
#index .box04 .con .logo {margin: 0 auto 30px;}
#index .box04 .video_area {position: relative; max-height: 484px; overflow: hidden;}
#index .box04 .smoke {background: url(img/index/box04_smoke.png)top left repeat; position: absolute; z-index: 2; height: 100%; width: 100%;}
#index .box04 video {height: 484px; object-fit: cover;}
#index .box04 ul li {margin-bottom: 20px;}
#index .box04 ul li:nth-last-child(1) {margin-bottom: 0;}
#index .box05 {padding: 50px 0; background: url(img/index/box05_bg.jpg); background-attachment: fixed;}
#index .box05 .inner {display: flex; justify-content: space-between; max-width: 1000px; margin: 0 auto;}
#index .box05 h2 {font-size: 34px; font-weight: bold; padding: 10px 0 10px 20px; border-left: 4px solid; line-height: 1; margin-bottom: 30px;}
#index .box05 .over {display: flex; justify-content: space-between; align-items: flex-start;}
#index .box05 .title_area {display: flex; padding: 20px 20px 0; justify-content: space-between; align-items: center;}
#index .box05 .title_area h3 {font-size: 26px; font-weight: bold; color: #000; line-height: 1; border-left: 5px solid #000; padding-left: 15px;}
#index .box05 .img {box-sizing: border-box; border: 2px solid #0b1133;}
#index .box05 .list {padding: 0 20px;}
#index .box05 .blog_item_area {max-width: 48%; min-width: 48%; box-sizing: border-box; border: 2px solid #0b1133; background-color: #fff;}
#index .box05 .blog_txt_item01 {margin-right: 20px;}
#index .box05 .blog_item,#index .box05 .blog_item h4 {font-weight: bold;}
#index .box05 .blog_item h4 {margin-bottom: 7px;}
#index .box05 .blog_item {margin: 17.5px 0; border-bottom: 1px solid; box-sizing: border-box; padding-bottom: 17.5px;}
#index .box05 .blog_item:nth-last-child(1) {margin-bottom: 0; border-bottom: none;}
#index .box05 ul {display: flex; justify-content: space-between; font-size: 18px; color: #fff; font-weight: bold; margin-top: 30px; max-width: 1000px; margin: 30px auto 0;}
#index .box05 ul li {background-color: #1b6daf; padding: 5px 0; width: 240px;}
#index .box05 ul li .icon {margin-right: 30px; margin-left: 10px;}
#index .box05 ul li .bdr {content: ""; width: 100%; box-sizing: border-box; border-bottom: 2px solid #000; padding-top: 5px;}
#index .box05 ul li:nth-child(4) {background: none; padding: 0;}
#index .box06 {padding: 50px 0; background: url(img/index/box04_bg01.jpg)top center repeat; color: #fff; font-size: 18px; box-sizing: border-box; border-top: 1px solid #000; border-bottom: 1px solid #000;}
#index .box06 h2 {margin-top: -1px;}
#index .box06 .inner {display: flex; justify-content: space-between; max-width: 1000px; margin: 0 auto; align-items: center; font-weight:  bold; background-color: #000; box-sizing: border-box; border: 1px solid #000; padding-right: 30px;}
#index .box06 .inner .center {line-height: 2;}
#index .box06 .tel {margin-bottom: 10px;}
#index .box07 {background: url(img/index/box07_bg.jpg)top center no-repeat; background-size: cover; padding: 50px 0 120px;}
#index .box07 h2 {font-size: 26px; font-weight: bold; letter-spacing: 1px; margin-bottom: 20px;}
#index .box07 p {max-width: 42%; text-align: justify; line-height: 2; font-weight: bold;}
#index .partner {padding: 40px 0; box-sizing: border-box; border-top: 5px solid #1b6daf; border-bottom: 5px solid #1b6daf; background-color: #fff;}
#index .partner .big {font-size: 40px; line-height: 1;}
#index .partner .bdr {content: ""; width: 100px; height: 2px; margin: 20px auto 40px; background-color: #000;}
#index .partner a {width: fit-content; margin: auto;}

/*========================
FOOTER
========================*/
footer {padding-bottom: 100px; position: relative; z-index: 5; background-color: #fff;}
footer .over {padding: 30px 0; color: #000; font-weight: bold; box-sizing: border-box; border-top: 1px solid #ccc;}
footer .over li p {display: inline; border-bottom: 1px solid; margin-left: 10px;}
footer .over ul {margin-top: 20px;}
footer .over ul li {margin-bottom: 15px;}
footer .over ul li:nth-last-child(1) {margin-bottom: 0;}
footer .con {box-sizing: border-box; border: 1px solid #002f99; padding: 25px 30px; background-color: #fff; margin-top: 23px;}
footer .con .title {font-size: 18px; color: #01319a; margin: 10px 0 5px; margin-left: -11px;}
footer .con .tel {margin-bottom: 8px;}



.copyright_area {background: url(img/footer/copy_bg.jpg)top center repeat; color: #fff; display: flex; justify-content: center; font-size: 12px; font-weight: bold; padding: 10px 0;}

/*pankuzu*/
.pan {background-color: #e7e1dd; padding: 20px 0;}
.pan p {max-width: 1000px; font-weight: bold; margin: 0 auto;}
.pan a {display: inline;}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
#page_top { bottom: 0; }
}

/*========================
POP BANNER background:
========================*/
#pop_banner {
	width: 900px;
	margin: auto;
	position: fixed;
	bottom: 20px;
	left: 0;
	right: 0;
	padding: 5px 5px 5px 20px;
	z-index: 100;
	background: url(img/footer/pop_bg.png)top left no-repeat;
	background-color: #eeeeee;
	box-sizing: border-box; 
	border: 3px solid #000;
}
#pop_banner .tel {margin-left: 50px;}
#pop_banner .item_box {
	width: 100%;
	max-width: 1000px;
	position: relative;
	}
#pop_banner .item02 {
	width: 72px;
	margin-right: 5px;
}
#pop_banner .spitem02 {
	display: none;
}
#pop_banner .page_top {width: 62px;}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
	.spfont11 {
		font-size: 11px;
		margin-right: 0px!important;
	}
#pop_banner h1,
#pop_banner .head02 { display: none; }
	#pop_banner .spitem02 {
		display: block;
		max-width: 93px;
		width: 100%;
	}
#pop_banner .item {
	width: 76%;
	border-right: 1px solid #000;
	margin: auto auto auto 4%;
}
}

/*========================
POP_BANNER_CONTACT
========================*/
#pop_banner_contact {
	background: #fff; 
	position: fixed;
	top: 100px;
	right: 0;
	z-index: 20;
}


/*========================
		googleMAP
========================*/
.ggmap {
position: relative;
padding-bottom: 70%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


/*========================
ページ設定
========================*/
/*
サムネ
*************/
.page_top_img {
	width: 100%;
}
.page_thumb {
	width: 100%;
	margin: auto;
	box-sizing: border-box; 
	margin-top: -130px;
}
.page_thumb img {
	height: 260px;
	object-fit: cover;
	width: 100%;
}
.top_slider2 {
	display: none;
}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
.page_thumb img {
	height: 120px;
}
}

/*
タイトル
*************/
.page_title {
	background: url(img/business/box01_h3_bg.gif)top left repeat;
	text-align: left;
	padding-left: 15px;
	color: #fff;
}
.page_title span {box-sizing: border-box; border-left: 4px solid #fff; padding-left: 10px;}

.child_title {
	color: #fff;
	font-size: 25px;
	font-weight: bold;
	background: #58a7c6;
	padding: 10px;
	text-align: center;
}

/*
wrap
*************/
.single_page {
	width: 100%;
	max-width: 720px;
}

/*****************
width768px以下
*****************/
@media screen and (max-width:768px) {
.single .flex2 { flex-direction: column-reverse; }
/*
wrap
*************/
.single_page {
	width: 100%;
	margin: auto;
}
	.top_slider2 {
		display: block;
	}
	.top_slider {
		display: none;
	}
}

/*
記事詳細ページ
***************/

.previous-entries,.next-entries {
	color: #000;
    width: 80px;
    background: #ddd;
    padding: 6px 0 0 10px;
    border: 2px solid #bbb; 
    box-sizing: border-box;
	font-weight: bold;}

.gallery_entry {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	height: 20px;
	margin: 0 10% 3px;
}

.nav_archive_btn {
	color: #fff;
	font-weight: bold;
	width: 150px;
	background: #444444;
	padding: 6px 0 6px 10px;
	box-sizing: border-box;
}


/*ページネーション
*******************/
.paging {
	clear: both;
	padding: 20px 0;
	position: relative;
	font-size: 14px;
	line-height: 14px;
    text-align: center;
}
.paging-box {
	display: inline-block;
}
.paging span, .paging a {
	display: block;
	float: left;
	margin: 2px 2px 2px 0;
	padding: 10px 15px 10px 15px;
	text-decoration: none;
	width: auto;
	color: #000; /* 文字色 */
	background: #ddd; /* 背景色 */
	border: 1px solid #bbb;
	font-weight: bold;
}
.page-of {display: none !important;}
.paging a:hover{
	color: #fff; /* マウスホバー時の文字色 */
	background: #ccc; /* マウスホバー時の背景色 */
}
.paging .current{
	padding: 10px 15px 10px 15px;
	color: #fff; /* 文字色 */
	background: #ccc; /* 背景色 */
}
@media only screen and (max-width: 413px) {
.paging {
	font-size: 12px;
	line-height: 12px;
}
.paging span, .paging a {
	padding: 8px 10px 8px 10px;
}
.paging .current{
	padding: 8px 10px 8px 10px;
}
}
