@charset "utf-8";
/*
Theme Name: yoshida_child
Template: yoshida
Author: innovesta
Author URI: http://www.innovesta.net
*/

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

main { overflow: hidden; }
/*****************
width-768px以下
*****************/
@media screen and (max-width:768px) {
	main { margin-top: 86px; }
}

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


/******************************
HEADER
******************************/
header {
	background: url(img/header/header_bg.gif) left top repeat; 
	padding-bottom: 20px;
}

header .header_item { width: 890px; }
header .header_cap {
	color: #aaa;
	font-weight: normal;
	font-size: 14px;
}
header .head01 { width: 314px; }
header .head02,
header .head03 { width: 270px; }


/*
nav
******************/
nav.main_nav { background: none; }
nav.main_nav ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
}
nav.main_nav ul li {
	color: #000;
	font-size: 14px;
	width: auto;
	display: inline-block;
	vertical-align: top;
	font-weight: bold;
	text-align: center;
}
nav.main_nav ul li.header_logo {
	width: 14%;
	min-width: 195px;
}

nav.main_nav ul li a { padding-top: 50px; }
nav.main_nav ul li:nth-child(1) { background: url(img/header/nav01.png) top center no-repeat; }
nav.main_nav ul li:nth-child(2) { background: url(img/header/nav02.png) top center no-repeat; }
nav.main_nav ul li:nth-child(3) { background: url(img/header/nav03.png) top center no-repeat; }
nav.main_nav ul li.header_logo { background: url(img/header/logo.png) top center no-repeat; }
nav.main_nav ul li:nth-child(5) { background: url(img/header/nav04.png) top center no-repeat; }
nav.main_nav ul li:nth-child(6) { background: url(img/header/nav05.png) top center no-repeat; }
nav.main_nav ul li:nth-child(7) { background: url(img/header/nav06.png) top center no-repeat; }

nav.main_nav ul li a {
	padding-bottom: 20px;
	border-bottom: 3px solid transparent;
}
nav.main_nav ul li.header_logo a {
	opacity: 0;
	padding-bottom: 0;
}

nav.main_nav ul li a:hover { border-bottom: 3px solid #1d6a96; }
nav.main_nav ul li.header_logo a:hover { border-bottom: 3px solid #fff; }

/*
sp_nav
******************/
/*****************
width-768px以下
*****************/
@media screen and (max-width:768px) {
header {
	width: 100%;
	padding-bottom: 0;
	position: fixed;
	top: 0;
	z-index: 9999;
}
}
#nav-drawer { position: relative; }
#nav-drawer .header_logo {
	width: 14%;
	min-width: 140px;
	margin: auto;
}
/*チェックボックス非表示*/
.nav-none { display:none; }

/*アイコンスペース*/
#nav-open {
    display: inline-block;
    width: 25px;
    height: 25px;
    vertical-align: middle;
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
}

/*openアイコン*/
#nav-open span,
#nav-open span:before,
#nav-open span:after {
	content: '';
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background: #555;
    display: block;
    cursor: pointer;
    position: absolute;
}
#nav-open span:before { bottom: -8px; }
#nav-open span:after { bottom: -16px; }

/*closeアイコン*/
#nav-close {
    display: inline-block;
    width: 25px;
    height: 25px;
    vertical-align: middle;
    margin: auto 0;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
}
#nav-close span {
	content: '';
    display: none;
    opacity: 0;
    transition: .3s ease-in-out;
    display: block;
    cursor: pointer;
    position: absolute;
    z-index: 9999;
}
#nav-close span:after,
#nav-close span:before {
	content: '';
    display: none;    
    height: 3px;
    width: 25px;
    border-radius: 3px;
    background: #555;
    opacity: 0;
    transition: 1s ease-in-out;
    cursor: pointer;
    position: absolute;
    z-index: 9999;
}
#nav-close span:after {
	transform: rotate(45deg);
	bottom: -8px;
}
#nav-close span:before {
	transform: rotate(-45deg);
	bottom: -8px;
}

/*content*/
#sp_nav {
    overflow: auto;
    width: 100%;
    height: 100%;
    background: #b9d3d9;
    transition: 0.3s ease-in-out;
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 8888;
}

/*チェックで表示*/
#nav-input:checked ~ #nav-close,
#nav-input:checked ~ #nav-close span,
#nav-input:checked ~ #nav-close span:after,
#nav-input:checked ~ #nav-close span:before {
	display: block;
	opacity: 1;
}
#nav-input:checked ~ #sp_nav {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

#nav-drawer #sp_nav ul {
	width: 100%;
	margin: 10% 0 0;
}
#nav-drawer #sp_nav ul li {
	color: #fff;
	font-size: 14px;
	width: 80%;
	border-bottom: 1px solid #fff; 
	margin: 0 auto 1em;
	padding-bottom: 1em;
	text-align: center;
}
#nav-drawer #sp_nav ul li.header_logo {
	background: url(img/header/logo.png) top center no-repeat;
	background-size: contain;
	max-width: 195px;
	margin: 0 auto 2em;
	padding-bottom: 0; 
	border-bottom: none; 
}
#nav-drawer #sp_nav ul li.header_logo a {
	opacity: 0;
	padding-bottom: 70px;
}


/*========================
index
========================*/
/*
slider
*************/
#index .bx-wrapper {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

#index .slide_box {
	background: url(img/header/header_bg.gif) left top repeat;
    width: 100%;
    height: 100%;
    padding-bottom: 25px;
    margin-bottom: 160px;
    position: relative;
    overflow:hidden;
}
#index .bx-wrapper {
    margin:0 auto;
    width:100%;
    max-width: 1270px;
}
#index .bx-wrapper img {
    width: 100%;
    object-fit: cover;
	font-family: 'object-fit: cover;'
}
#index .slide_box .bx-wrapper .bx-viewport {overflow: visible !important;}
#index .slide_box #sliderInner {
    position:relative;
    width:100%;
    max-width: 1270px;
    margin: auto; 
}
#index .slide_box li {
	box-sizing: border-box;
}

#index .bx-wrapper .bx-controls-direction a {
    position: absolute;
    opacity: 1;
    top: 45%;
    outline: 0;
    width: 39px;
    height: 65px;
    text-indent: -9999px;
    z-index: 9999;
}
#index .bx-wrapper .bx-prev {
    left: -39px;
    background: url(img/index/slide_prev.gif) center center no-repeat;
    background-size: cover;
}
#index .bx-wrapper .bx-next {
    right: -39px;
    background: url(img/index/slide_next.gif) center center no-repeat;
    background-size: cover;
}
@media screen and (max-width:1348px) {
	#index .bx-wrapper .bx-prev { left: 0; }
	#index .bx-wrapper .bx-next { right: 0; }
}


/*
box01
*************/
#index .box01 {
	background: url(img/index/box01_bg01.jpg) top center no-repeat,
				url(img/index/box01_bg02.png) top 20% left repeat,
				#fff;
	background-size: contain,
					 auto,
					 auto;
	padding: 100px 0 50px;
	position: relative;
}

/*
item01
*************/
#index .box01 .item01 {
	-webkit-background-size: 10px 10px;
	-moz-background-size: 10px 10px;
	background-size: 10px 10px;
	background-color: #f9f6f3;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,
    		color-stop(.25, #f3ede8), color-stop(.25, transparent),
    		color-stop(.5, transparent), color-stop(.5, #f3ede8),
    		color-stop(.75, #f3ede8), color-stop(.75, transparent),
    		to(transparent));
	background-image: -webkit-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: -ms-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: -o-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent); 
	width: 95%;
	max-width: 1110px;
	margin: auto;
	padding: 1%; 
	border-bottom: 10px solid #e7e1dd;
	position: absolute;
	top: -265px;
	left: 0;
	right: 0;
	z-index: 7777;
}
#index .box01 .item01 :before {
	content: "";
	background: url(img/index/slide_box_box01_bg.png) bottom center no-repeat;
	background-size: contain;
	width: 20%;
	max-width: 177px;
	height: 120%;
	max-height: 236px;
	position: absolute;
	bottom: 0;
	left: 1%;
	z-index: 200;
}

/*layout01*/
#index .box01 .item01 .layout01 {
	display: flex;
	align-items: center;
	margin-bottom: 1%;
}
#index .box01 .item01 .layout01 .left {
	width: 65%;
	max-width: 500px;
	margin-right: 2%;
}
/*layout02*/
#index .box01 .item01 .layout02 {
	display: flex;
	align-items: center;
	margin-top: -5%;
}
#index .box01 .item01 .layout02 .left {
	width: 49%;
	max-width: 128px;
	margin-right: 2%;
}
#index .box01 .item01 .layout02 .right {
	width: 49%;
	max-width: 128px;
}
/*layout03*/
#index .box01 .item01 .layout03 {
	display: flex;
	align-items: center;
}
#index .box01 .item01 .layout03 .left {
	width: 49%;
	max-width: 388px;
	margin-right: 2%;
}
#index .box01 .item01 .layout03 .right {
	width: 100%;
	max-width: 384px;
}

#index .box01 .item01 .child01 { margin-left: 20%; }
#index .box01 .item01 .child01 h2 {
	font-size: 26px;
	letter-spacing: 3px;
	font-weight: bold;
}


/*
item02
*************/
#index .box01 .item02 .item {
	width: 24%;
	max-width: 283px;
	min-width: 190px;
	display: inline-block;
}
#index .box01 .item02 h1 {
	width: 70%;
	max-width: 468px;
}
#index .box01 .item02 .item h2 {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
    vertical-align: middle;
	line-height: 1.3em;
	width: 283px;
	height: 50px;
	display: table-cell;
}
#index .box01 .item02 .item .icon { width: 59px; }
#index .box01 .item02 .item img { margin: 10px auto 20px; }

#index .box01 .item02 .btn {
	width: 80%;
	max-width: 499px;
}
/*****************
width-1023px以下
*****************/
@media screen and (max-width:1023px) {
/*
item01
*************/
#index .box01 .item01 { top: -240px; }
#index .box01 .item01 .child01 h2 { font-size: 20px; }
/*
item02
*************/
#index .box01 .item02 .item { margin: 0 auto; }
}
/*****************
width-768px以下
*****************/
@media screen and (max-width:768px) {
#index .box01 .item01 .layout01 .right { display: none; }
#index .box01 .item02 h1 {margin-top: 50px;
	margin-bottom: 25px!important;}
/*
item01
*************/
#index .box01 .item01 { top: -225px; }
#index .box01 .item01 :before { display: none;}
#index .box01 .item01 .child01 { margin-left: 0; }
#index .box01 .item01 .child01 h2 { font-size: 16px; }
/*
item02
*************/
#index .box01 .item02 .item { width: 48%; }
}
/*****************
width-640px以下
*****************/
@media screen and (max-width:640px) {
/*
slider
*************/
#index .slide_box { margin-bottom: 0; }
/*
box01
*************/
#index .box01 { padding: 0px 0px 50px 0px;  }
/*
item01
*************/
#index .box01 .item01 {
    width: 100%;
    top: 0;
}
}
/*****************
width-480px以下
*****************/
@media screen and (max-width:480px) {
/*
slider
*************/
#index .bx-wrapper .bx-controls-direction a {
    width: 25px;
    height: 40px;
}
/*
item01
*************/
#index .box01 .item01 {
    width: 100%;
    box-sizing: border-box;
	position: relative;
}
/*layout01*/
#index .box01 .item01 .layout01 { display: block; }
#index .box01 .item01 .layout01 .left {
    width: 100%;
    margin-right: 0%;
	text-align: center;
}
#index .box01 .item01 .child01 h2 { font-size: 14px; }
/*layout02*/
#index .box01 .item01 .layout02 { margin-top: 0%; }
#index .box01 .item01 .layout02 .left {
    width: 49%;
    max-width: 128px;
    margin-right: 2%;
}
/*
item02
*************/
#index .box01 .item02 .item {
    width: 100%;
    margin-bottom: 10px;
}
}

/*
box02
*************/
#index .box02 { background: url(img/index/box02_bg.jpg) top center repeat; }

#index .box02 .item {
	width: 100%;
	box-sizing: border-box;
	position: relative;
	line-height: 2em;
}
#index .box02 .item h1 {
	width: 100%;
	max-width: 676px;
	position: relative;
}

#index .box02 .item .case_item {
	width: 49%;
	max-width: 485px;
	background: #f8f8f8; 
	padding: 20px;
	box-sizing: border-box;
}
#index .box02 .item .case_item .before,
#index .box02 .item .case_item .after {
	width: 46%;
	max-width: 204px;
}
#index .box02 .item .case_item .before img.before_img,
#index .box02 .item .case_item .after img.after_img {
	height: 135px;
	object-fit: cover;
}
#index .box02 .item .case_item .case_arrow { width: 14px; }
#index .box02 .item .case_item .case_no {
	min-width: 87px;
	height: auto;
	background-size: cover;
	margin-right: 20px;
}
#index .box02 .item .case_item:nth-child(1) .case_no { background: url(img/case/no01.png) center center no-repeat; }
#index .box02 .item .case_item:nth-child(2) .case_no { background: url(img/case/no02.png) center center no-repeat; }
#index .box02 .item .case_item:nth-child(3) .case_no { background: url(img/case/no03.png) center center no-repeat; }
#index .box02 .item .case_item:nth-child(4) .case_no { background: url(img/case/no04.png) center center no-repeat; }
#index .box02 .item .case_item .case_txt p {
	font-size: 16px;
	font-weight: bold;
}
#index .box02 .item .case_item .btn {
	width: 93px;
	position: relative;
	left: 100%;
    transform: translateX(-100%);
}
#index .box02 .case_btn {
	width: 100%;
	max-width: 499px;
}

/*****************
width-640px以下
*****************/
@media screen and (max-width:640px) {
#index .box02 .item .case_item {
	width: 100%;
	margin: auto;
}
}


/*
box03
*************/
#index .box03 {
	background: url(img/index/box03_bg.png) bottom center no-repeat,
				#f5f3e8;
	background-size: cover;
	padding: 150px 0;
}

#index .box03 .item {
	width: 100%;
	max-width: 430px;
	position: relative;
}

#index .box03 .item h1 {
	font-size: 42px;
	letter-spacing: 15px;
	position: relative;
}
#index .box03 .item h1:after {
	content: "";
	background: url(img/index/box03_title_cap01.png) center center no-repeat;
	width: 119px;
	height: 38px;
	margin: auto;
	position: absolute;
	top: -50px;
	left: 0;
	right: 0;
}
#index .box03 .item h1:before {
	content: "";
	background: url(img/index/box03_title_cap02.png) center center no-repeat;
	width: 128px;
	height: 128px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: -85px;
}
#index .box03 .item p { letter-spacing: 5px; }
#index .box03 .item .btn {
	width: 100%;
	max-width: 429px;
}

/*****************
width-480px以下
*****************/
@media screen and (max-width:480px) {
	#index .box03 { background: url(img/index/box03_bg.png) bottom left 31% no-repeat,
								#f5f3e8; }
	#index .box03 .item h1 {
		font-size: 34px;
		text-align: left;
		letter-spacing: 0;
	}
	#index .box03 .item h1:before { right: 0; }
	#index .box03 .item p { letter-spacing: 0; }
}


/*
box04
*************/
#index .box04 { background: #f5f3e8; }

#index .box04 .item01 h1 {
	width: 95%;
	max-width: 480px;
}
#index .box04 .item01 p {
	letter-spacing: 5px;
	margin-bottom: 220px;
}

/*child
*************/
#index .box04 .item01 .child {
	-webkit-background-size: 10px 10px;
	-moz-background-size: 10px 10px;
	background-size: 10px 10px;
	background-color: #f9f6f3;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,
    		color-stop(.25, #f3ede8), color-stop(.25, transparent),
    		color-stop(.5, transparent), color-stop(.5, #f3ede8),
    		color-stop(.75, #f3ede8), color-stop(.75, transparent),
    		to(transparent));
	background-image: -webkit-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: -ms-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: -o-linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #f3ede8 25%, transparent 25%,
			transparent 50%, #f3ede8 50%, #f3ede8 75%,
			transparent 75%, transparent); 
}

/*layout01*/
#index .box04 .item01 .child .layout01 {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
#index .box04 .item01 .child .layout01 .left {
	margin-right: 2%;
}

/*child_box*/
#index .box04 .item01 .child_box {
	background: #fff;
	width: 32%;
	max-width: 345px;
	min-width: 240px;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 10px;
	position: relative;
}
/*****************
width-768px以下
*****************/
@media screen and (max-width:768px) {
	/*layout01*/
	#index .box04 .item01 .child .layout01 { display: block; }
	#index .box04 .item01 .child .layout01 .left,
	#index .box04 .item01 .child .layout01 .right
	 {
		margin-right: auto;
		margin-left: auto;
	}
	#index .box04 .item01 .child_box {
		width: 60%;
		margin-bottom: 250px;
	}
	#index .box04 .item01 .child_box:last-child { margin-bottom: 20px; }
}
/*****************
width-640px以下
*****************/
@media screen and (max-width:640px) {
	#index .box04 .item01 .child_box {
		width: 100%;
		max-width: 100%;
	}
}

#index .box04 .item01 .child_box:before {
	content: "";
	position: absolute;
	bottom: 100%;
}
#index .box04 .item01 .child_box:nth-child(1):before {
	background: url(img/index/box04_child01.png) bottom center no-repeat;
	background-size: contain;
	width: 111%;
	max-width: 380px;
	max-height: 233px;
	padding-top: 68%;
	left: -50px;
}
#index .box04 .item01 .child_box:nth-child(2):before {
	background: url(img/index/box04_child02.png) bottom center no-repeat;
	background-size: contain;
	width: 100%;
	max-width: 341px;
	max-height: 242px;
	padding-top: 70%;
	left: 0;
	right: 0;
}
#index .box04 .item01 .child_box:nth-child(3):before {
	background: url(img/index/box04_child03.png) bottom center no-repeat;
	background-size: contain;
	width: 107%;
	max-width: 367px;
	max-height: 246px;
	padding-top: 71%;
	right: -50px;
}
/*****************
width-1200px以下
*****************/
@media screen and (max-width:1200px) {
	#index .box04 .item01 .child_box:nth-child(1):before,
	#index .box04 .item01 .child_box:nth-child(2):before,
	#index .box04 .item01 .child_box:nth-child(3):before {
		width: 100%;
		margin: auto;
		padding-top: 61%;
		left: 0;
		right: 0;
	}
}

#index .box04 .item01 .child_box h2 {
	padding-bottom: 1em;
	margin-bottom: 1em;
	border-bottom: dashed 1px #f44336;
}
#index .box04 .item01 .child_box p {
	text-align: left;
	letter-spacing: 3px;
	margin-bottom: 1em;
}
#index .box04 .item01 .child_box .btn {
	width: 93px;
	position: relative;
	left: 100%;
    transform: translateX(-100%);
}

#index .box04 .item01 .btn {
	width: 100%;
	max-width: 499px;
}


/*
box05
*************/
#index .box05 { background: url(img/index/box01_bg02.png) top left repeat; }

#index .box05 .item h2 {
	width: 100%;
	max-width: 870px;
	position: relative;
}

#index .box05 .bx-wrapper .bx-controls-direction a {
    position: absolute;
    opacity: 1;
    top: 45%;
    outline: 0;
    width: 39px;
    height: 65px;
    text-indent: -9999px;
    z-index: 9999;
}
#index .box05 .bx-wrapper .bx-prev {
    left: -78px;
    background: url(img/index/slide_prev.gif) center center no-repeat;
    background-size: cover;
}
#index .box05 .bx-wrapper .bx-next {
    right: -78px;
    background: url(img/index/slide_next.gif) center center no-repeat;
    background-size: cover;
}
@media screen and (max-width:1348px) {
	#index .box05 .bx-wrapper .bx-prev { left: 0; }
	#index .box05 .bx-wrapper .bx-next { right: 0; }
}
/*****************
width-480px以下
*****************/
@media screen and (max-width:480px) {
#index .box05 .bx-wrapper .bx-controls-direction a {
	width: 25px;
	height: 40px;
}
}


#index .box05 .voiceslider li {
	background: #fff;
	box-sizing: border-box;
	position: relative;
}
#index .box05 .voiceslider li:before {
	content: "";
	width: 11%;
	max-width: 117px;
	height: 23%;
	max-height: 95px;
	position: absolute;
	bottom: 10px;
	right: 30px;
}
#index .box05 .voiceslider li.list01:before {
	background: url(img/index/box05_list_no01.png) left bottom no-repeat;
	background-size: contain;
}
#index .box05 .voiceslider li.list02:before {
	background: url(img/index/box05_list_no02.png) left bottom no-repeat;
	background-size: contain;
}
#index .box05 .voiceslider li.list03:before {
	background: url(img/index/box05_list_no03.png) left bottom no-repeat;
	background-size: contain;
}
#index .box05 .voiceslider li.list04:before {
	background: url(img/index/box05_list_no04.png) left bottom no-repeat;
	background-size: contain;
}
/*layout01*/
#index .box05 .layout01 {
	display: flex;
	padding: 32px;
}
#index .box05 .layout01 .left {
	width: 55%;
	max-width: 550px;
	margin-right: 2%;
}
#index .box05 .layout01 .right {
	width: 43%;
	text-align: left;
}

#index .box05 .layout01 .right h2 {
	color: #1d6a96;
	width: auto;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 1em;
}
#index .box05 .layout01 .right p.btn {
	background: #d2b64e; 
	color: #fff;
	font-size: 14px;
	padding: 10px 15px;
	display: inline-block;
}
/*****************
width-768px以下
*****************/
@media screen and (max-width:768px) {
/*layout01*/
#index .box05 .layout01 { display: block; }
#index .box05 .layout01 .left,
#index .box05 .layout01 .right {
	width: 100%;
	max-width: 100%; 
    margin-right: auto;
    margin-left: auto;
}
}


/*
box06
*************/
#index .box06 { background: #fff; }

/*layout01*/
#index .box06 .layout01 {
	display: flex;
	padding: 32px;
}
#index .box06 .layout01 .left {
	width: 15%;
	max-width: 138px;
	min-width: 112px;
	margin-right: 5%;
}
#index .box06 .layout01 .right {
	width: 80%;
	text-align: left;
}
/*****************
width-768px以下
*****************/
@media screen and (max-width:768px) {
/*layout01*/
#index .box06 .layout01 {
	display: block;
	padding: 0;
}
#index .box06 .layout01 .left,
#index .box06 .layout01 .right {
	width: 100%;
	max-width: 100%; 
    margin-right: auto;
    margin-left: auto;
}
/*layout02*/
#index .box06 .layout02 {
	display: flex;
	align-items: center;
}
#index .box06 .layout02 .left02 {
	width: 15%;
	max-width: 138px;
	min-width: 112px;
	margin-right: 10%;
}
#index .box06 .layout02 .right02 {
	width: 75%;
	max-width: 138px;
	text-align: left;
}
}

#index .box06 .item {
	width: 100%;
	box-sizing: border-box;
	position: relative;
}
#index .box06 .item .icon {
	width: 90%;
	max-width: 68px;
	margin: auto;
}
#index .box06 .layout01 .bg_strip {
	padding: 10px;
	box-sizing: border-box;
	-webkit-background-size: 3px 3px;
	-moz-background-size: 3px 3px;
	background-size: 3px 3px;
	background-color: #c5c5c5;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,
			color-stop(.25, #fff), color-stop(.25, transparent),
			color-stop(.5, transparent), color-stop(.5, #fff),
			color-stop(.75, #fff), color-stop(.75, transparent),
			to(transparent));
background-image: -webkit-linear-gradient(-45deg, #fff 25%, transparent 25%,
			transparent 50%, #fff 50%, #fff 75%,
			transparent 75%, transparent);
background-image: -moz-linear-gradient(-45deg, #fff 25%, transparent 25%,
			transparent 50%, #fff 50%, #fff 75%,
			transparent 75%, transparent);
background-image: -ms-linear-gradient(-45deg, #fff 25%, transparent 25%,
			transparent 50%, #fff 50%, #fff 75%,
			transparent 75%, transparent);
background-image: -o-linear-gradient(-45deg, #fff 25%, transparent 25%,
			transparent 50%, #fff 50%, #fff 75%,
			transparent 75%, transparent);
background-image: linear-gradient(-45deg, #fff 25%, transparent 25%,
			transparent 50%, #fff 50%, #fff 75%,
			transparent 75%, transparent);
}
#index .box06 .item #blog_list {
	background: #fff;
	padding: 35px 48px; 
}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
	#index .box06 .item #blog_list { padding: 20px 20px; }
}
#index .box06 .item .blog_item { font-size: 16px; }
#index .box06 .item .blog_item:hover { opacity: 0.7; }


/*
box07
*************/
#index .box07 {
	background: url(img/index/box07_bg.gif) bottom center repeat;
	border-bottom: 10px solid #d2b64e;
}

/*layout01*/
#index .box07 .layout01 {
	display: flex;
	justify-content: space-between;
	position: relative;
}
#index .box07 .layout01 .left {
	width: 54%;
	max-width: 532px;
	margin-right: 2%;
}
#index .box07 .layout01 .right {
	width: 100%;
	max-width: 430px;
}
#index .box07 .layout01:before {
	content: "";
	background: url(img/index/box07_tel_sub.png) left bottom no-repeat;
	background-size: contain;
	width: 17%;
	max-width: 167px;
	height: 103%;
	max-height: 254px;
	position: absolute;
	bottom: 0;
	right: -10%;
}
.ftlink {
	display: inline-block;
	margin-left: 20px;
}
#index .box07 .layout01 .left img { max-width: 476px; }
@media screen and (max-width:1244px) {
	/*layout01*/
	#index .box07 .layout01 { display: block; }
	#index .box07 .layout01 .left,
	#index .box07 .layout01 .right {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}
	#index .box07 .layout01:before {
		width: 17%;
		max-width: 167px;
		height: 103%;
		max-height: 254px;
		position: absolute;
		bottom: 0;
		right: 0;
	}
}


/*
box08
*************/
#index .box08 {
	background: url(img/index/box08_bg01.png) bottom center no-repeat,
				url(img/index/box08_bg.jpg) top center no-repeat;
	background-size: contain,
					 cover;
	padding: 100px 0 150px 0;
}

#index .box08 .item {
	background: rgba(255,255,255,0.85);
	padding: 40px;
	box-sizing: border-box;
}

/*layout01*/
#index .box08 .layout01 { display: flex; }
#index .box08 .layout01 .left {
	width: 28%;
	max-width: 137px;
	margin-right: 2%;
}
#index .box08 .layout01 .right { width: 70%; }
/*****************
width640px以下
*****************/
@media screen and (max-width:640px) {
	/*layout01*/
	#index .box08 .layout01 { display: block; }
	#index .box08 .layout01 .left {
		width: 50%;
		max-width: 137px;
		margin-right: 0;
	}
	#index .box08 .layout01 .right { width: 100%; }
}
/*========================
FOOTER
========================*/
footer {
	background: url(img/footer/box01_bg02.png) top left repeat;
	text-align: left;
	font-size: 14px;
	padding-bottom: 125px;
	position: relative;
}
footer .site_map { position: relative; }

/*layout01*/
footer .site_map .layout01 {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
footer .site_map .layout01 .left{
	width: 250px;
	margin-right: 2%;
}
footer .site_map .layout01 .right{ width:50%; }
/*****************
width768px以下
*****************/
@media screen and (max-width:768px) {
	.ftlink {
	display: block;
	margin-left: 0;
}
	/*layout01*/
	footer .site_map .layout01 { display: block; }
	footer .site_map .layout01 .left,
	footer .site_map .layout01 .right {
		min-width: 328px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}
	#index .box01 .item01 .layout03 {
	display: block;
	align-items: center;
}
#index .box01 .item01 .layout03 .left {
	width: 80%;
	max-width: 80%;
	margin: 20px auto;
}
#index .box01 .item01 .layout03 .right {
	width: 80%;
	max-width: 100%;
	margin: 0 auto 20px auto;
}
}

/*layout02*/
footer .site_map .layout02 { display: flex; }
footer .site_map .layout02 .left02{
	width: 68%;
	max-width: 186px;
	margin-right: 2%;
}
footer .site_map .layout02 .right02{
	width: 30%;
	max-width: 83px;
}

footer .site_map .layout02 li { margin-bottom: 1em; }

/*
right_box
*************/
footer .contact {
	min-width: 435px;
	background: #fff;
	padding: 25px;
	box-sizing: border-box;
}
footer .contact .logo { width: 281px; }
footer .contact .tel {
	width: 73%;
	max-width: 243px;
}

/*layout03*/
footer .site_map .layout03 {
	display: flex;
	justify-content: space-between;
}
/*****************
width768px以下
*****************/
@media screen and (max-width:768px) {
	footer .contact { min-width: 328px; }
	/*layout03*/
	footer .site_map .layout03 { display: block; }
}

footer .site_map .copy {
	position: absolute;
	bottom: 0;
	left: 0;
}
/*****************
width768px以下
*****************/
@media screen and (max-width:768px) {
	footer .site_map .copy {
		text-align: center;
		bottom: -30px;
		left: 0;
		right: 0;
	}
}


/*========================
PAGE_TOP
========================*/
#page_top {
	width: 16%;
	max-width: 98px;
	min-width: 59px;
	position: absolute;
	bottom: 0;
	left: 100%;
	z-index: 200;
}
/*****************
width1225px以下
*****************/
@media screen and (max-width:1225px) {
#page_top {
	bottom: 100%;
	left: auto;
	right: 0;
}
}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
#page_top { bottom: 0; }
}

/*========================
POP BANNER background:
========================*/
#pop_banner {
	background: url(img/index/box07_bg.gif) left top repeat;
	width: 100%;
	border-bottom: 10px solid #d2b64e;
	margin: auto;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 100;
}
#pop_banner .item_box {
	width: 100%;
	max-width: 1037px;
	position: relative;
	}
#pop_banner h1 {
	width: 26%;
	max-width: 260px;
}
#pop_banner .head02 {
	width: 30%;
	max-width: 310px;
}
#pop_banner .item {
	width: 36%;
	max-width: 372px;
}
#pop_banner .item02 {
	width: 100%;
    max-width: 93px;
}
#pop_banner .spitem02 {
	display: none;
}
/*****************
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 {
	background: url(img/header/header_bg.gif) left bottom repeat;
	width: 100%;
	padding-bottom: 30px;
}
.page_thumb {
	width: 100%;
	margin: auto;
	box-sizing: border-box; 
}
.page_thumb img {
	height: 220px;
	object-fit: cover;
}
.top_slider2 {
	display: none;
}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
.page_thumb img {
	height: 120px;
}
}

/*
タイトル
*************/
.page_title {
	background: #1d6a96;
	text-align: left;
	padding-left: 1em;
}

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

/*
wrap
*************/
.single_page {
	width: 72%;
	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;
	}
}


/*
contact_banner
*************/
#contact_banner {
	border: 5px solid #1d6a96;
	box-sizing: border-box;
}
#contact_banner .item {
	background: #fff;
	border: none !important;
	padding: 18px;
	box-sizing: border-box; 
}

/*layout01*/
#contact_banner .item .layout01 {
	display: flex;
	align-items: flex-end;
}
#contact_banner .item .layout01 .left{
	width: 54%;
	max-width: 362px;
	margin: 0 6% 0 0;
}
#contact_banner .item .layout01 .right{
	width: 40%;
	max-width: 270px;
}
/*****************
width480px以下
*****************/
@media screen and (max-width:480px) {
/*layout01*/
#contact_banner .item .layout01 { display: block; }
#contact_banner .item .layout01 .left,
#contact_banner .item .layout01 .right {
	width: 100%;
	margin: 0 auto 10px;
	max-width: 100%;
}
}

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

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

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

.nav_archive_btn {
	color: #fff;
	width: 150px;
	background: #1d6a96;
	padding: 6px 0;
	border-bottom: 3px solid #58a7c6; 
	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;
}
.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;
}
}
