@charset "UTF-8";
/*
Theme Name: tabuchi-design
Theme URI: /wp-content/themes/tabuchi-design
Description: ブレーメン通りのたぶち歯科のサイトです
Author: yamada
Author URI:
Version: 1.0

1.  common settings
2.  sp settings
3.  header settings
4.  index settings
5.  page settings
6.  single settings
7.  sidebar settings
8.  footer settings
9.  form setting
10.  Other Styles

*/

@font-face {
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 400;
	src: local("Noto Sans CJK JP Regular"),
		url('fonts/NotoSansJP-Regular.otf') format('opentype');
}
@font-face {
	font-family: 'Noto Sans JP';
	font-style: bold;
	font-weight: 600;
	src: local("Noto Sans CJK JP Medium"),
		url('fonts/NotoSansJP-Medium.otf') format('opentype');
}
@font-face {
	font-family: 'Noto Sans JP';
	font-style: bold;
	font-weight: 700;
	src: local("Noto Sans CJK JP Bold"),
		url('fonts/NotoSansJP-Bold.otf') format('opentype');
}



/*==================================================================
common settings
===================================================================*/
html {
	font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	letter-spacing:0.05em;
	font-weight: 400;
}
body{
	overflow-x: hidden;
	letter-spacing:0.05em;
	position:relative;
	color:#222;
	font-weight: 400;
	margin:0;
	padding:0;
}
h1,h2,h3,h4,h5,p,a,span,strong,dl,dt,dd,table,tbody,thead,th,td,blockquote,ul,li,ol {
	font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#222;
}
p, li, dt, dd,th,td{
	font-size: 16px;
	line-height:200%;
	margin:0 0 30px 0;
}
a {
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
	text-decoration:underline;
	color:#e49d14;
}
a img:hover {
	opacity: 0.6;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
}
a:hover {
	color:#416723;
	text-decoration:none;
}
img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	max-width:100%;
}

@media screen and (max-width : 639px){
	p, li, dt, dd, th,td{
		line-height:180%;
		margin-bottom:20px;
		font-size:14px;
	}
}

/* container / flex
-------------------------------------------------------------------*/
.uk-container{
	max-width:1300px;
	margin:0 auto;
	padding:0 40px;
	display:block;
}
.uk-grid.uk-grid-collapse {
	margin-left: 0;
}
.uk-grid.uk-grid-collapse >* {
	padding-left: 0;
}
.uk-align-right,
.single .alignright{
	float:right;
	margin:0 0 0 40px;
}
.uk-align-left,
.single .alignleft{
	float:left;
	margin:0 40px 0 0;
}

@media screen and (max-width : 959px){
	.uk-container{
		padding:0 30px;
	}
}
@media screen and (max-width : 639px){
	.uk-container{
		padding:0 20px;
	}
	.uk-align-right,
	.uk-align-left,
	.single .alignright,
	.single .alignleft{
		display:block;
		float:none;
		margin:0 auto 20px;
	}
	.uk-align-right img,
	.uk-align-left img{
		display:block;
		margin:0 auto ;
	}
	.uk-align-right img.width100,
	.uk-align-left img.width100{
		max-width:100%;
	}
}


/* margin,padding
-------------------------------------------------------------------*/
.mb0 {
	margin-bottom: 0;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb20 {
	margin-bottom: 1.5em;
}
.mb30 {
	margin-bottom: 30px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb80 {
	margin-bottom: 80px;
}
.mb120 {
	margin-bottom: 120px;
}
.mb100 {
	margin-bottom: 8em;
}
.mt5{
	margin-top: 5px;
}
.mt10{
	margin-top: 10px;
}
.mt15{
	margin-top: 15px;
}
.mt20{
	margin-top: 20px;
}
.mt40{
	margin-top: 40px;
}
.mt60{
	margin-top: 60px;
}
.mt80{
	margin-top: 80px;
}
.pb0{
	padding-bottom:0;
}
.pb20{
	padding-bottom:20px;
}
.pb30{
	padding-bottom:30px;
}
.pt80{
	padding-top:80px;
}
.pt30{
	padding-top:30px;
}
.pb80{
	padding-bottom:80px;
}
.pt0{
	padding-top:0;
}
.pBox15{
	padding:15px;
}
@media screen and (max-width : 959px){
	.mb120 {
		margin-bottom: 80px;
	}
}
@media screen and (max-width : 639px){
	.mb60{
		margin-bottom:30px;
	}
	.mb80{
		margin-bottom:40px;
	}
	.mb100{
		margin-bottom:50px;
	}
	.mb120 {
		margin-bottom: 60px;
	}
	.mt60{
		margin-top: 30px;
	}
}


/* font style
-------------------------------------------------------------------*/

.bold{
	font-weight:bold;
}
.center{
	text-align:center;
}
.strong,
strong{
	font-weight:600;
	color:#e49d14;
	padding:0 5px 2px;
	letter-spacing:0.05em;
	position:relative;
	background:#fff6e8;
	margin:0 5px;
}
.green{
	color:#416723;
}
.fonts{
	font-size:80%;
}
.fontl{
	font-size:120%;
}

@media screen and (max-width : 639px){
	.fonts{
		font-size:12px;
	}
}


/* table sheet style
-------------------------------------------------------------------*/
table.sheet {
	border-collapse:collapse;
	border-spacing:0px;
	border-bottom: none;
	margin-bottom:25px;
	width:100%;
}
.sheet th, .sheet td {
	padding: 15px 20px;
	text-align: left;
	vertical-align:middle;
	line-height:160%;
	background:#fff;
}
.sheet tr{
	border-bottom:1px solid #ddd;
}
.sheet tr:first-child{
	border-top:1px solid #ddd;
}
.sheet th {
	font-weight:600;
	background:#f7ecd7;
}
.single .sheet td {
	font-size:90%;
}
.sheet td ol.list{
	margin:0;
}
.sheet td ul.list{
	padding-left:10px;
	margin:0;
}
.sheet td ul.list li {
	margin:0;
	text-align:left;
	line-height:160%;
	font-size:90%;
}
.sheet td ul.list li:last-child {
	margin:0;
}
.sheet td img {
	vertical-align:middle;
}
.sheet th img {
	margin:10px 0 0 0;
}
/* table price
---------------------------------------------*/
table.price th{
	padding: 8px 15px;
	line-height:140%;
	text-align:center;
}
table.price td{
	padding: 8px 10px;
	border-left:solid 1px #eee;
	text-align:center;
}
table.price tr:first-child td{
	background:#f7f7f7;
	font-weight:600;
}
table.price tr th:first-child{
	width:22%;
}
table.price td:last-child{
	width:20%;
}

table.price tr:first-child td:first-child{
	border-left:none;
}
table.price td img{
	display:block;
	margin:0 auto;
	max-width:initial;
}

/* table other
---------------------------------------------*/
table.center td,
table.center th{
	text-align:center;
}
table td .fonts,
table td.fonts{
	font-size:12px;
	color:#666;
	line-height:140%;
}
.sheet30 th {
	width:30%;
}
.sheetEqual  {
	table-layout: fixed;
}
table.small td,
table.small th,
table.small td li{
	font-size:13px;
}


@media screen and (max-width : 639px){
	.sheet th, .sheet td,.sheet td ul.list li {
		font-size:14px;
	}
	.single .sheet td {
		font-size:14px;
	}
	table.sheet td{
		padding:15px;
	}
	table.price th img{
		display:block;
	}
	table.spblock th,
	table.spblock td{
		display:block;
		margin:0;
		width:auto;
		padding:10px;
	}
	table.spblock th{
		background:#f7ecd7;
		padding:5px 10px;
	}

	table.price th,
	table.price td{
		padding: 5px 10px;
	}
}


/* table 横スクロール style
-------------------------------------------------------------------*/
	.scroll_pc{
		overflow:auto!important;
		white-space:nowrap;
		display:block;
		margin-bottom:15px;
	}
	.scroll_pc::-webkit-scrollbar{
		height:10px;
	}
	.scroll_pc::-webkit-scrollbar-track{
		background:#f1f1f1;
	}
	.scroll_pc::-webkit-scrollbar-thumb{
		background:#bcbcbc;
	}
	.scroll_pc .sheetEqual  {
		table-layout: auto;
	}
@media screen and (max-width : 639px){
	.scroll{
		overflow:auto!important;
		white-space:nowrap;
		display:block;
		margin-bottom:15px;
	}
	.scroll::-webkit-scrollbar,
	.scroll_pc::-webkit-scrollbar{
		height:5px;
	}
	.scroll::-webkit-scrollbar-track{
		background:#f1f1f1;
	}
	.scroll::-webkit-scrollbar-thumb{
		background:#bcbcbc;
	}
	.scroll .sheetEqual  {
		table-layout: auto;
	}
}

/*	dl style
-------------------------------------------------------------------*/
dl.dllist{
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	border-top:1px solid #ddd;
}
dl.dllist dt,
dl.dllist dd{
	padding:10px;
	border-bottom:1px solid #ddd;
	margin:0;
}
dl.dllist dt{
	width:calc(20% - 20px);
	color:#00407a;
	font-weight:700;
}
dl.dllist dd{
	width:calc(80% - 20px);
}

@media screen and (max-width : 639px){
	dl.dllist dt,
	dl.dllist dd{
		border-bottom:none;
		margin:0;
	}
	dl.dllist dt{
		width:100%;
		padding:10px 10px 5px;
		font-size:16px;
	}
	dl.dllist dd{
		width:100%;
		border-bottom:1px solid #ddd;
		padding:0 10px 10px 10px;
	}
}

/* list style
-------------------------------------------------------------------*/
ul.list{
	padding-left:15px;
	margin:0 0 25px;
	overflow:hidden;
}
ul.list li{
	padding-left:25px;
	margin:5px 0;
	position:relative;
	list-style:none;
}

ul.list li::before {
	content: "";
	width: 0.8em;
	height: 0.8em;
	background: #e49d14;
	border-radius: 100%;
	position: absolute;
	left: 0;
	top: 0.6em;
}

ol.list{
	counter-reset: my-counter;
	list-style: none;
	padding-left:30px;
	margin:0 0 25px;
	overflow:hidden;
}
ol.list li{
	padding-left:5px;
	margin:5px 0;
	position: relative;
}
ol.list li:before{
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #e49d14;
	color: #fff;
	display: block;
	float: left;
	line-height: 160%;
	margin-left: -35px;
	text-align: center;
	height: 1.6em;
	width: 1.6em;
	border-radius: 50%;
	margin-top:3px;
}

ul.check {
	padding:0;
	margin:0 0 40px;
	overflow:hidden;
}
ul.check li{
	padding-left:35px;
	position:relative;
	margin:5px 0;
	font-size:18px;
}
ul.check li::before {
	content: "";
	top: 50%;
	transform: translatey(-50%);
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #e49d14;
	background-color: #e49d14;
	box-sizing: border-box;
	position: absolute;
	display: block;
	pointer-events: none;
	border-radius:0;
}
ul.check li::after {
	content: "";
	top: calc(50% - 8px);
	transform: translatey(-50%);
	left: 6px;
	width: 8px;
	height: 13px;
	border: 3px solid #fff;
	border-top: none;
	border-left: none;
	transform: rotate(45deg);
	transform-origin: 50% 50%;
	transition: 0.3s;
	box-sizing: border-box;
	position: absolute;
	display: block;
	pointer-events: none;
}
@media screen and (max-width : 639px){
	ol.list li:before{
		margin-top:0;
	}
}
/*	tab menu
-------------------------------------------------------------------*/
ul.tab{
	margin:0 ;
	padding:0;
	text-align:center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: stretch;
}
ul.tab li{
	display:block;
	list-style-type:none;
	margin:0;
	width:50%;
	height:80px;
}
ul.tab li a{
	background:#e5c88f;
	color:#fff;
	padding:0 10px ;
	display:block;
	text-align:left;
	text-decoration:none;
	font-size:18px;
	position:relative;
	text-align:center;
	border-right:1px solid #eeebe5;
	height:100%;

	display: flex;
	justify-content: center;
	align-items: center;
}
ul.tab2{
	margin-bottom:40px;
}
ul.tab2 li a{
	font-size:14px;
	line-height:120%;
}
ul.tab li:first-child a{
	border-radius:15px 0 0 0;
}
ul.tab li:last-child a{
	border-radius:0 15px 0 0;
}
ul.tab li a:hover,
ul.tab li a.active{
	background:#e49d14;
}
ul.tab li:last-child a{
	border-right:none;
}
ul.tab li a:hover:before,
ul.tab li a.active:before{
	content:"";
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid #e49d14;
	position:absolute;
	bottom:-10px;
	left:50%;
	transform:translateX(-50%);
}
.tabContent,
.tabContent2,
.tabContent3,
.tabContent4{
	display: none;
}
@media screen and (max-width : 959px){
	ul.tab li a{
		color:#fff;
	}
	ul.tab2{
		flex-wrap: wrap;
	}
	ul.tab2 li{
		width:32%;
		height:50px;
		margin-bottom:10px;
	}
	ul.tab2 li:first-child a,
	ul.tab2 li:last-child a,
	ul.tab2 li a{
		border-radius:5px;
	}
}
@media screen and (max-width : 639px){
	ul.tab li,
	ul.tab2 li{
		height:40px;
	}
	ul.tab2{
		margin-bottom:20px;
	}
	ul.tab2 li{
		width:49%;
		margin-bottom:5px;
	}
	ul.tab li a,
	ul.tab2 li a{
		font-size:12px;
	}
	ul.tab li:first-child a{
		border-radius:5px 0 0 0;
	}
	ul.tab li:last-child a{
		border-radius:0 5px 0 0;
	}
	ul.tab li a:hover:before,
	ul.tab li a.active:before{
		border-left-width: 7px ;
		border-right-width: 7px;
		border-top-width: 7px ;
		bottom:-7px;
	}
}


/* icon
-------------------------------------------------------------------*/
i{
	color:#fff;
}
a:hover i{
	color:#fff !important;
}


/*	blockquote
-------------------------------------------------------------------*/
blockquote {
	background: none repeat scroll 0 0 rgba(245, 245, 245, 0.8);
	border: 1px solid #FFFFFF;
	margin:0 0 40px 0;
	padding: 60px 30px 15px;
	position: relative;
	border-radius:10px;
}
blockquote:before {
	color: #C8C8C8;
	content: "“";
	font-family: serif;
	font-size: 500%;
	left: 0;
	line-height: 1em;
	position: absolute;
	top: 15px;
	left:15px;
}

/*	accordion
-------------------------------------------------------------------*/
/*アコーディオン全体*/
.accordion-area{
	list-style: none;
	width: 100%;
	padding:0;
	margin:0 0 40px;
}
.accordion-area li{
	margin: 0;
	background:#fff;
}
.accordion-area li:last-child{
	border-bottom: 1px solid #ddd;
}
.accordion-area section {
	border-top: 1px solid #ddd;
}

/*アコーディオンタイトル*/
.faq_title {
	position: relative;/*+マークの位置基準とするためrelative指定*/
	cursor: pointer;
	font-weight: normal;
	padding: 20px 40px 20px 15px;
	transition: all .5s ease;
	margin:0;
}
.faq_title span{
	position: relative;
	padding-left:35px;
	display:inline-block;
}
.faq_title span:before{
	content:"Q.";
	position:absolute;
	top:50%;
	left:0;
	color:#3d4159;
	transform:translatey(-50%);
	font-size:160%;
}

/*アイコンの＋と×*/
.faq_title::before,
.faq_title::after{
	position: absolute;
	content:'';
	width: 20px;
	height: 2px;
	background-color: #3d4159;
}
.faq_title::before{
	top:49%;
	right: 15px;
	transform: rotate(0deg);
}
.faq_title::after{
	top:49%;
	right: 15px;
	transform: rotate(90deg);
}

/*　closeというクラスがついたら形状変化　*/
.faq_title.close::before{
	transform: rotate(45deg);
}
.faq_title.close::after{
	transform: rotate(-45deg);
}

/*アコーディオンで現れるエリア*/
.faq_box {
	display: none;/*はじめは非表示*/
	background: #f5f5f5;
	margin:0 0 30px;
	padding: 30px 30px 30px 60px;
	position:relative;
	border-radius:10px;
}
.faq_box:before {
	content:"A.";
	position:absolute;
	top:50%;
	left:25px;
	color:#fdcd07;
	transform:translatey(-50%);
	font-size:160%;
}
.faq_box p:last-child{
	margin:0;
}

@media screen and (max-width : 639px){
	.faq_box {
		margin:0 0 20px;
		padding: 20px 20px 20px 50px;
	}
	.faq_title {
		padding: 15px 40px 15px 10px;
	}
	.faq_title span{
		padding-left:30px;
	}
	.faq_box:before {
		left:15px;
	}
}



/* fadeIn
-------------------------------------------------------------------*/
.fade_in {
	opacity: 0;
	transition-duration: 1000ms;
	transition-property: opacity, transform;
}
.fade_in_up {
	transform: translate(0, 50px);
}
.fade_in_down {
	transform: translate(0, -50px);
}
.fade_in_left {
	transform: translate(-50px, 0);
}
.fade_in_right {
	transform: translate(50px, 0);
}
.scroll_in {
	opacity: 1;
	transform: translate(0, 0);
}
@media screen and (max-width : 959px){

}
@media screen and (max-width : 639px){
	.fade_in {
		transition-duration: 1000ms;
	}
}



/*==================================================================
sp common settings
===================================================================*/
/* sp contactbtn footer
-------------------------------------------------------------------*/
#sp-contact{
	position: fixed;
	z-index:10000;
	overflow:hidden;
	margin:0;
	padding:0;
	right: 0;
	bottom:0;
	width:100%;
}
#sp-contact li{
	margin:0;
	list-style:none;
	width:50%;
	float:left;
}
#sp-contact li a{
	display:block;
	color:#fff;
	text-decoration:none;
	text-align:center;
	padding: 20px;
	background:#55b0d9 url(img/icon_access.svg) no-repeat 30px center/22px;
	border-right:1px solid #fff;
	font-size:22px;
	font-weight:500;
}
#sp-contact li:last-child a{
	background:#e49d14 url(img/icon_tel2.svg) no-repeat 30px center/25px ;
	border-right:none;
}
#sp-contact li a:hover{
	opacity:0.6;
}
@media screen and (max-width : 959px){
	body{
		padding-bottom:69px;
	}
}
@media screen and (max-width : 639px){
	body{
		padding-bottom:46px;
	}
	#sp-contact li a,
	#sp-contact li:last-child a{
		padding: 10px 5px 10px 25px;
		font-size:14px;
		background-position:15px center;
	}
}
@media screen and (min-width : 960px){
	#sp-contact{
		display:none!important;
	}
}


/*==================================================================
header settings
===================================================================*/

/* header
-------------------------------------------------------------------*/
header{
	width:100%;
	height:120px;
	z-index:970;
	position:relative;
}
header.fixed{
	position:fixed;
	background:#fff;
}
header .uk-grid{
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-align-items: center;
	align-items: center;
}
header .uk-grid,
header .uk-grid > *{
	position:relative;
}
header .uk-grid >*:first-child{
	width:40%;
	max-width:650px;
}
.logo{
	margin:0 0 0 30px;
	position:relative;
}
.logo a:hover img{
	opacity:1;
}
.head_contact{
	display:flex;
	vertical-align:middle;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: center;
	align-items: center;
	height:120px;
	margin:0 0 0 50px;
}
.head_contact a{
	text-decoration:none;
	color:#fff;
	font-size: clamp(14px, 1vw, 16px);
	letter-spacing:0.02em;
	text-align:center;
	display:inline-block;
	position:relative;
	padding-top:75px;
	width:120px;
	height:calc(100% - 75px);
	background:#e49d14 url(img/icon_access.svg) no-repeat center 25px/32px;
	border-radius:0 0 0 30px;
}
.head_contact a:hover{
	background-color:#d78e00;
}
.head_tel{
	display:inline-block;
	width:100%;
	text-align:right;
	text-decoration:none;
}
.head_tel span{
	color:#e49d14;
	background:url(img/icon_tel.svg) no-repeat left center/27px;
	padding:15px 0 15px 40px;
	font-size: 30px;
	vertical-align:middle;
}
.head_tel span + span{
	color:#a6a39d;
	background:none;
	padding:0;
	font-size: 14px;
	display:inline-block;
	margin-left:10px;
}
@media screen and (max-width : 959px){
	header,
	header .uk-grid{
		height:80px;
	}
	header .uk-grid >*:first-child{
		width:40%;
	}
	header .uk-grid{
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	.head_contact{
		display:none;
	}

}
@media screen and (max-width : 639px){
	header,
	header .uk-grid{
		height:50px;
	}
	header .uk-grid >*:first-child{
		width:70%;
	}
	.logo{
		margin:0 0 0 10px;
		height:50px;
	}
}

/* navigation
-------------------------------------------------------------------*/
#nav{
	display:flex;
	vertical-align:middle;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
	margin:0 0 0 auto;
	width:auto;
}

.nav_items{
	padding:0 0 0 0;
	margin:10px -25px 0 0;
	position:relative;
}

.nav_items > li {
	display:block;
	margin:  0;
	padding:0;
	position:relative;
	text-align:left;
	float:left;
	text-align:center;
}
.nav_items > li > a,
.nav_items > li > span.nolink{
	text-decoration:none;
	color:#222;
	font-size:16px;
	font-size: clamp(14px, 1vw, 16px);
	letter-spacing:0.05em;
	margin:0 ;
	padding:10px 25px;
	display:block;
	line-height:100%;
	position:relative;
	border-left:3px dotted #e6e7ec;
}
.nav_items > li > a:hover,
.nav_items > li > span.nolink:hover{
	color:#e49d14;
}
@media screen and (max-width : 1480px){
	.nav_items > li > a,
	.nav_items > li > span.nolink{
		padding:10px 15px;
	}
}

@media screen and (max-width : 959px){
	#nav{
		display:none;
	}
}

/*Nav  シンプルプルダウン
-------------------------------------------------------------------*/

#nav li.has-child > div{
	position: absolute;
	left:0;
	top:50px;
	z-index: 50;
	visibility: hidden;
	opacity: 0;
	transition: all .3s;
	background:#eabe6b;
	width:400px;
	margin:0;
}
#nav ul.nav_items li:last-child > div{
	right:0;
	left:auto;
}
#nav li.has-child:hover > div,
#nav li.has-child ul li:hover > div,
#nav li.has-child:active > div,
#nav li.has-child ul li:active > div{
	visibility: visible;
	opacity: 1;
}
.nav_items_img{
	width:calc(100% - 10px);
	height:140px;
	margin:5px 5px 0 5px;
}
.nav_items_img01{
	background:url(img/about_top.jpg) no-repeat center center/cover;
}
.nav_items_img02{
	background:url(img/about_img02.jpg) no-repeat center 70%/cover;
}
.nav_items_img03{
	background:url(img/about_new.jpg) no-repeat center center/cover;
}
#nav ul li ul{
	list-style: none;
	margin: 0;
	padding: 0;
	z-index:2000;
}
#nav ul li ul li{
	margin:0;
	display:block;
	width:50%;
	padding:0;
	float:left;
}
#nav ul li ul li a{
	display:block;
	font-size:14px;
	color: #fff;
	text-decoration:none;
	line-height:140%;
	text-align:left;
	margin:0;
	display: flex;
	align-items: center;
	padding:10px 15px 10px 35px;
	position:relative;
	border-top:1px solid #fff;
	background:url(img/more.svg) no-repeat 15px center/10px;
}
#nav ul li ul li:nth-child(odd) a{
	border-right:1px solid #fff;
}
#nav ul li ul li:nth-child(2) a,
#nav ul li ul li:first-child a{
	border-top:none;
}
#nav ul.nav_items li:first-child ul li a{
	border-bottom:1px solid #fff;
	border-top:none;
}
#nav ul.nav_items li:first-child ul li:last-child a{
	border-bottom:none;
}
#nav ul li ul li a:hover{
	background-color:#e49d14;
}

/* menubtn
-------------------------------------------------------------------*/
.menu_btn{
	border:none;
	z-index:1000;
	vertical-align:middle;
	background:#e49d14;
	color:#fff;
	font-size:12px;
	margin: 0 ;
	height:80px;
	outline:0;
	letter-spacing:0.1em;
	text-align:center;
	padding:0;
	position:fixed;
	top:0;
	right:0;
}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 80px;
	height: 80px;
	text-align:center;
	display:block;
}
.menu-trigger:after{
	content:"MENU";
	text-align:center;
	color:#fff;
	font-size:14px;
	text-decoration:none;
	position:absolute;
	bottom:2px;
	left:50%;
	transform:translatex(-50%);
}
button.active .menu-trigger:after{
	content:"CLOSE"
}
.menu-trigger span {
	position: absolute;
	left: 50%;
	transform:translateX(-50%);
	width: 36px;
	height: 3px;
	background-color: #fff;
}
button.active .menu-trigger span{
	background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
	top: 25px;
}
.menu-trigger span:nth-of-type(2) {
	top: 38px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 25px;
}
button.active .menu-trigger span:nth-of-type(1) {
	-webkit-transform: translateY(15px) rotate(-45deg);
	transform: translateY(15px) rotate(-45deg);
}
button.active .menu-trigger span:nth-of-type(2) {
	opacity: 0;
}
button.active .menu-trigger span:nth-of-type(3) {
	-webkit-transform: translateY(-12px) rotate(45deg);
	transform: translateY(-12px) rotate(45deg);
}
button.active .menu-trigger span {
	left: 30px;
}
@media screen and (min-width : 960px){
	.menu_btn{
		display:none!important;
	}
}
@media screen and (max-width : 959px){
	button.active .menu-trigger span {
		left: 20px;
	}
}
@media screen and (max-width : 639px){
	.menu_btn{
		height:50px;
		top:0;
		transform:none;
	}
	.menu-trigger {
		position: relative;
		width: 50px;
		height: 50px;
	}
	.menu-trigger span {
		width: 30px;
		height: 2px;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 8px;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 17px;
	}
	.menu-trigger span:nth-of-type(3) {
		bottom: 22px;
	}
	button.active .menu-trigger span:nth-of-type(1) {
		-webkit-transform: translateY(8px) rotate(-45deg);
		transform: translateY(8px) rotate(-45deg);
	}
	button.active .menu-trigger span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
	}
	button.active .menu-trigger span {
		left: 10px;
	}
	.menu-trigger:after{
		font-size:12px;
		bottom:5px;
		writing-mode: horizontal-tb;
	}
}
/* toggle_nav
-------------------------------*/
#toggle_nav{
	position:fixed;
	z-index: 999;
	top:0;
	right: -120%;
	width:100%;
	height:100vh;
	background:#f7f7f7;
	transition: all 0.7s;
	overflow-y: scroll;
}
.toggle_inner{
	padding:140px 100px;
}
#toggle_nav.open{
	right: 0;
}
.toggle_inner .uk-grid{
	height:100%;
}


@media screen and (max-width : 639px){
	.toggle_inner{
		padding:60px 20px 100px 20px ;
		height:auto;
	}
	.toggle_inner img{
		width:200px;
	}
}


/* nav_menu_list
-------------------------------*/
#toggle_nav ul {
	padding:0;
	overflow:hidden;
	margin: 60px 10px;
}
#toggle_nav nav{
	overflow:hidden;
}
#toggle_nav ul li{
	margin:0;
	border-bottom:3px dotted #fff;
}
#toggle_nav ul li a,
#toggle_nav ul li span.nolink{
	display:block;
	text-decoration:none;
	color:#55b0d9;
	font-size:12px;
	padding:14px 20px 20px 0;
	margin:0;
	position:relative;
}

#toggle_nav ul li a:before,
#toggle_nav ul li span.nolink:before{
	content:"";
	background:#55b0d9 url(img/more.svg) no-repeat center center/12px;
	width:30px;
	aspect-ratio: 1 / 1;
	position:absolute;
	right:20px;
	top:calc(50% - 10px);
	transition:0.4s;
	border-radius:20px;
}
#toggle_nav ul li.active span.nolink:before{
	transform: rotate(90deg);/* 回転 */
}
#toggle_nav ul li span.sub{
	display:block;
	color:#222;
	font-size:18px;
	line-height:120%;
}

#toggle_nav ul li ul.menu{
	display:none;
}
#toggle_nav ul li ul.menu{
	padding:0;
	margin:0 0 15px;
}
#toggle_nav ul li ul.menu li{
	border:none;
	float:left;
	width:50%;
}
#toggle_nav ul li ul.menu li {
	list-style:none
}
#toggle_nav ul li ul.menu li a{
	display:block;
	color:#222;
	font-size:14px;
	padding:5px 5px 5px 40px ;
	margin:0;
	text-align:left;
}
#toggle_nav ul li ul.menu li a:before{
	width:18px;
	background-size:8px;
	right:auto;
	left:5px;
}
#toggle_nav ul li ul{
	margin:0;
}


@media screen and (max-width : 639px){
	#toggle_nav ul {
		margin:  0;
		float:none;
		width:100%;
	}
	#toggle_nav ul li a,
	#toggle_nav ul li span.nolink{
		font-size:12px;
		padding: 10px 20px 10px 0;
	}
	#toggle_nav ul li span.sub{
		font-size:15px;
	}
	#toggle_nav ul li ul.menu li a{
		font-size:14px;
		padding-left:25px;
	}
	#toggle_nav ul li a:before,
	#toggle_nav ul li span.nolink:before{
		width:20px;
		right:0;
		background-size:10px;
	}
	#toggle_nav ul li ul.menu li a:before{
		width:14px;
		background-size:6px;
		top:50%;
		transform:translatey(-50%);
	}

}



/*==================================================================
index settings
===================================================================*/
/* keyv
-------------------------------------------------------------------*/
.keyv {
	position:relative;
	margin:40px 0 0;
}
.keyv img{
	max-width:80%;
}
.keyv_txt{
	position:absolute;
	bottom:20%;
	right:5%;
	max-width:25%;
}
.keyv_txt img{
	max-width:100%;
}



@media screen and (max-width : 959px){
	.keyv {
		margin:15px 0 0;
	}
}
@media screen and (max-width : 639px){
	.keyv {
		margin:10px 0 0;
	}

}

/* more style
-------------------------------------------------------------------*/
p.more{
	margin: 50px auto 0 ;
	text-decoration:none;
	text-align:center;
}
.tabContent p.more{
	width:100%;
}
.more a {
	color: #55b0d9;
	text-decoration:none;
	position: relative;
	display:inline-block;
	padding:15px 60px 15px 30px;
	font-size:16px;
	border-radius:10px;
	border:solid 1px #55b0d9;
	min-width:200px;
	text-align:left;
	background:#fff;
}
.more a:before{
	position: absolute;
	top: 50%;
	right: 30px;
	transform:translateY(-50%);
	width: 30px;
	aspect-ratio: 1 / 1;
	content: '';
	-webkit-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
	border-radius: 50%;
	background:#55b0d9 url(img/more.svg) no-repeat center center/13px;
}
.more a:hover{
	background-color: #55b0d9;
	color:#fff;
}
.more a:hover:before{
	right:20px;
}


@media screen and (max-width : 639px){
	p.more{
		margin: 25px 0 0 0;
	}
	p.more a{
		font-size:14px;
		padding:10px 40px 10px 15px;
		display:block;
		min-width:initial;
	}
	.more a:before{
		width: 25px;
		right:15px;
	}

}
/* content
-------------------------------------------------------------------*/
.content{
	margin:0 0 160px;
}
@media screen and (max-width : 959px){
	.content{
		margin:0 0 80px;
	}

}
@media screen and (max-width : 639px){
	.content{
		margin:0 0 40px;
	}
}



/* top_title
-------------------------------------------------------------------*/
.top_title{
	margin:0 0 70px;
	line-height:180%;
	text-align:center;
	font-size:34px;
	letter-spacing:0.2em;
	color:#222;
	font-weight:400;
	position:relative;
	padding:45px 0 0 0;
}
.top_title img{
	position:absolute;
	top:0;
	left:50%;
	transform:translatex(-50%);
	z-index:-1;
}
.top_title span{
	display:block;
	font-size:16px;
	font-weight:bold;
	color:#55b0d9;
	text-transform: uppercase;
	line-height:100%;
	position:relative;
	margin-top:10px;
}
.top_title span:before,
.top_title span:after{
	content:"ー";
	font-weight:400;
	opacity:0.6;
}
@media screen and (max-width : 959px){
	.top_title{
		margin:0 0 50px;
		padding:25px 0 0 0;
	}
	.top_title img{
		max-height:60px;
	}
}
@media screen and (max-width : 639px){
	.top_title{
		font-size:18px;
		margin:0 0 25px;
		line-height:160%;
		letter-spacing:0.1em;
		padding:15px 0 0 0;
	}
	.top_title img{
		max-height:30px;
	}
	.top_title span{
		font-size:12px;
		letter-spacing:0.2em;
	}
}



/* topnews
-------------------------------------------------------------------*/
.topnews{
	margin-top:60px;
}
#js-tabContent2{
	background:#f7f7f7;
	padding:80px;
	border-radius:0 0 15px 15px;
}
@media screen and (max-width : 959px){
	#js-tabContent2{
		padding:60px 30px;
	}
	.topnews{
		margin-top:30px;
	}
}
@media screen and (max-width : 639px){
	#js-tabContent2{
		padding:20px 15px;
		border-radius:0 0 5px 5px;
	}
	.topnews{
		margin-top:10px;
	}

}


/* line-list
---------------------------------------*/
.line-list{
	padding:0;
	list-style:none;
	margin:0 auto;
	max-width:1000px;
}
.line-list li{
	margin:0;
}
.line-list li a{
	text-decoration:none;
	color:#444;
	display:block;
	padding:20px 15px ;
	position:relative;
	transition:0.4s;
	border-bottom:1px solid #ddd;
	position:relative;
}
.line-list li:first-child a{
	border-top:1px solid #ddd;
}
.line-list li h3,
.line-list li h4{
	display:inline-block;
	font-size:16px;
	margin: 0 0 0 20px;
	vertical-align: middle;
	line-height:160%;
	width:calc(100% - 220px);
	font-weight:400;
	transition:0.4s;
}

.line-list li a:hover h3{
	color:#e49d14;	
}
.date{
	display:inline-block;
	color:#999;
	font-size:12px;
	line-height:100%;
	margin:0 20px 0 0;
	vertical-align:middle;
}
.i-cat{
	display:inline-block;
	text-align:center;
	color:#fff;
	margin:10px 0;
	font-size:14px;
	line-height:100%;
	text-transform:uppercase;
	vertical-align: middle;
	margin-right:5px;
	background:#e49d14;
	padding:3px 20px 5px;
}
.i-cat a{
	display:block;
	color:#3d4159;
	text-decoration:none;
	padding:5px 30px;
}

@media screen and (max-width : 639px){
	.date{
		margin:0;
		font-size:10px;
	}
	.line-list li a{
		padding:8px 5px 10px ;
	}
	.line-list li h3{
		display:block;
		margin: 3px 0 2px 0 ;
		width:100%;
		font-size:14px;
		line-height:150%;
	}
	.i-cat{
		margin:0 0 0 10px;
		font-size:10px;
	}
}

/* topconcept
-------------------------------------------------------------------*/
.Topconcept{
	position:relative;
	padding:120px 0 0 0;
}
.Topconcept:before{
	content:"";
	background:url(img/concept_bg.jpg) no-repeat center center/cover;
	width:100%;
	height:50%;
	position:absolute;
	top:0;
}

.Topconcept h2 + p{
	text-align:center;
	margin:0 15px 80px;
}
.concept_txt h3{
	font-size:28px;
	margin:40px 0 ;
	color:#111;
	line-height:180%;
	display: flex;
	align-items: center;
	text-align:left;
}
.concept_txt h3 span{
	color:#fff;
	font-size:36px;
	font-weight:700;
	background:url(img/icon2.svg) no-repeat center center/contain;
	padding:15px 40px;
	letter-spacing:0.2em;
	margin-right:40px;
}
.concept_txt p{
	margin:0;
	text-align:left;
}
.concept_img {
	width:750px;
	margin:0 auto;
	aspect-ratio: 3 / 2;
	border-radius:15px;
	border:solid 10px #fff;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}
.concept01{
	background-image:url(img/concept01.jpg);
}
.concept02{
	background-image:url(img/concept02.jpg) ;
	background-position:center bottom;
}
.concept03{
	background-image:url(img/concept03.jpg) ;
}
.slider {
	width:100%;
	margin:0 auto;
	list-style:none;
	padding:0;
}
.slider li{
	margin:0;
	padding:0;
	outline: none;
	text-align:center;
}


.slider .slick-slide {
	transform: scale(0.7);/*左右の画像のサイズを80%に*/
	transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
}
.slider .slick-slide .concept_txt{
	visibility:hidden;
	opacity:0;
	transition: all .5s;
	max-width:710px;
	margin:0 auto;
}
.slider .slick-slide.slick-center{
	transform: scale(1);/*中央の画像のサイズだけ等倍に*/
	transition: all .5s;
}
.slider .slick-slide.slick-center .concept_txt{
	visibility:visible;
	opacity:1;
	transition: all .5s;
	
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
	position: absolute;/*絶対配置にする*/
	top: 32%;
	cursor: pointer;/*マウスカーソルを指マークに*/
	outline: none;/*クリックをしたら出てくる枠線を消す*/
	width: 80px;
	aspect-ratio: 1 / 1;
	background:url(img/arrow.png) no-repeat center center/contain;
}

.slick-prev {/*戻る矢印の位置と形状*/
	left: 16%;
	transform: rotate(-180deg);
	z-index:100;
}

.slick-next {/*次へ矢印の位置と形状*/
	right: 16%;
}

@media screen and (max-width : 959px){
	.slider li{
		width:90vw;
	}
	.concept_img {
		width:100%;
	}
	.slick-prev, 
	.slick-next {
		width: 60px;
	}
	.slick-prev {/*戻る矢印の位置と形状*/
		left: 20px;
	}
	.slick-next {/*次へ矢印の位置と形状*/
		right: 20px;
	}
	.Topconcept {
		padding: 80px 0 0 0;
	}
}
@media screen and (max-width : 639px){
	.concept_txt h3{
		font-size:18px;
		margin:20px 0 ;
	}
	.concept_txt h3 span{
		font-size:20px;
		margin:0 20px 0 0;
		padding:10px 20px;
	}
	.concept_img {
		border-radius:10px;
		border:solid 5px #fff;
	}
	.slick-prev, 
	.slick-next {
		width: 40px;
	}
	.slick-prev {/*戻る矢印の位置と形状*/
		left: 10px;
	}
	.slick-next {/*次へ矢印の位置と形状*/
		right: 10px;
	}
	.Topconcept h2 + p{
		margin:0 15px 30px;
	}
	.Topconcept {
		padding: 40px 0 0 0;
	}
}

/* topconcept2
-------------------------------------------------------------------*/
.Topconcept2{
	background:#eff6f9;
	padding:180px 0;
	position:relative;
	margin-bottom:220px;
}
.Topconcept2:before{
	content:"";
	background: url(img/concept2.png) no-repeat right center/contain;
	width:calc(50% - 70px);
	height:calc(100% - 440px);
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	right:0;
}
.concept2_txt{
	max-width:50%;
	padding-bottom:10em;
	position:relative;
}
.Topconcept2 .top_title{
	text-align:left;
	font-size:clamp(1.125rem, 0.158rem + 2.42vw, 2.125rem);
}
.concept2_img{
	position:absolute;
	top:-40px;
	left:5%;
}
.concept2_img2{
	position:absolute;
	bottom:-100px;
	left:5%;
}
@media screen and (max-width : 959px){
	.Topconcept2{
		padding:120px 0;
		margin-bottom:100px;
	}
	.Topconcept2:before{
		width:calc(55% - 70px);
		top:-60px;
		transform:none;
	}
	.concept2_img{
		width:30%;
		top:-20px;
	}
	.concept2_txt{
		max-width:100%;
		padding-bottom:5em;
	}
	.concept2_img2{
		width:50%;
		bottom:-20px;
	}
}
@media screen and (max-width : 639px){
	.Topconcept2{
		padding:80px 0;
		margin-top:60px;
		margin-bottom:60px;
	}
	.Topconcept2:before{
		width:calc(70% - 70px);
		top:-140px;
	}
	.concept2_img{
		width:25%;
		top:30px;
	}
	.concept2_txt{
		padding-bottom:50px;
	}
	.concept2_img2{
		width:70%;
		bottom:-10px;
	}
}


/* topabout
-------------------------------------------------------------------*/
.about_top{
	background:url(img/about_top.jpg) no-repeat center center/cover;
	width:70%;
	border-radius:0 15px 15px 0;
}
.about_top + h3{
	writing-mode: vertical-rl;
	padding:140px 0;
	margin:0 auto;
	text-align:center;
	font-size:28px;
	line-height:240%;
	display:inline;
	position:relative;
}
.about_top + h3 span{
	position:relative;
}
.about_top + h3 span.large{
	font-size:34px;
}
.about_top + h3 span:before{
	content:"";
	background:rgba(228,157,20,0.6);
	width:10px;
	height:100%;
	position:absolute;
	right:2px;
	top:0;
	z-index:-1;
}
.Topabout .uk-container{
	margin-top:100px;
}
.about_new{
	background:#f9efdc;
	border-radius:15px;
	display:flex;
	padding:10px;
	flex-wrap: nowrap;
	margin:80px 0;
}
.about_new >*{
	width:50%;
}
.about_new >*:last-child{
	padding:50px;
	position:relative;
}
.about_new >*:last-child:before{
	content:"";
	background-color: #f9efdc;
	width: 20px;
	height: 34px;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
	display:block;
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	left:-20px;
}
.about_new h4{
	color:#e49d14;
	letter-spacing:0.15em;
	margin:0 0 20px;
	font-size:26px;
}
.about_new p{
	margin:0;
}
.about_new_img{
	background:url(img/about_new.jpg) no-repeat center center/cover;
	border-radius:10px 0 0 10px;
}
.about_img01{
	background:url(img/about_img01.jpg) no-repeat center center/cover;
	width:100%;
	aspect-ratio: 5 / 3;
	border-radius:15px;
}
.about_img02{
	background:url(img/about_img02.jpg) no-repeat center center/cover;
	width:100%;
	aspect-ratio: 5 / 3;
	border-radius:15px;
}
.about_img01 + h4,
.about_img02 + h4{
	text-align:center;
	font-size:26px;
	margin:40px 0;
}
@media screen and (max-width : 959px){
	.about_top + h3{
		padding:80px 0;
	}
	.Topabout .uk-container {
		margin-top: 60px;
	}
	.about_new {
		margin: 40px 0;
	}
	.about_new >*:last-child {
		padding: 30px;
	}
}
@media screen and (max-width : 639px){
	.about_top{
		width:60%;
		border-radius:0 15px 15px 0;
	}
	.about_top + h3{
		writing-mode: vertical-rl;
		padding:20px 0;
		font-size:16px;
		line-height:200%;
	}
	.about_top + h3 span.large{
		font-size:20px;
	}
	.about_top + h3 span:before{
		width:8px;
	}
	.Topabout .uk-container {
		margin-top: 30px;
	}
	.about_new{
		flex-wrap: wrap;
		border-radius:10px;
	}
	.about_new >* {
		width: 100%;
	}
	.about_new_img{
		height:120px;
		border-radius:5px;
	}
	.about_new {
		margin: 30px 0 0;
	}
	.about_new >*:last-child {
		padding: 20px 15px 15px;
	}
	.about_new h4{
		font-size:20px;
		margin: 0 0 15px;
	}
	.about_new >*:last-child:before {
		content: none;
	}
	.about_img01,
	.about_img02{
		border-radius:10px;
		margin-top:30px;
	}
	.about_img01 + h4,
	.about_img02 + h4{
		font-size:18px;
		margin:30px 0 20px;
	}
}




/* topgreeting
-------------------------------------------------------------------*/
.Topgreeting{
	background:url(img/greeting.jpg) no-repeat center center/cover;
	padding:160px 0;
}
.greeting_img{
	background:url(img/greeting_img.jpg) no-repeat center bottom/cover;
	border-radius:15px;
	border:solid #fff 10px;
	height:100%;
	width:100%;
	margin:0 30px;
}
.greeting_txt{
	padding:80px 40px ;
}
@media screen and (max-width : 959px){
	.Topgreeting{
		padding:80px 0;
	}
	.greeting_img{
		background:url(img/greeting_img.jpg) no-repeat center 40%/110%;
		height:500px;
	}
	.greeting_txt{
		padding:60px 40px 0;
	}

}
@media screen and (max-width : 639px){
	.Topgreeting{
		padding:40px 0;
	}
	.greeting_img{
		background:url(img/greeting_img.jpg) no-repeat center 35%/110%;
		height:220px;
		margin:0;
		border-width:5px;
		border-radius:10px;
	}
	.greeting_txt{
		padding:25px 0 0;
	}

}


/* Topmenu
-------------------------------------------------------------------*/
.Topmenu{
	position:relative;
	margin-top:80px;
}
.Topmenu:before{
	content:"";
	background:url(img/Topmenu.jpg) no-repeat center 70%/cover;
	height:500px;
	width:100%;
	position:absolute;
	top:300px;
}
.Topmenu2:before{
	background:url(img/Topmenu2.jpg) no-repeat center center/cover;
	top:240px;
}
.Topmenu .top_title2{
	writing-mode: vertical-rl;
	text-align:right;
	margin:0 0 350px auto; 
	line-height:100%;
}
.Topmenu2 .top_title2{
	margin:0 0 340px auto; 
}
.Topmenu .top_title2 span{
	background:#55b0d9;
	padding:25px;
	color:#fff;
	font-size:32px;
	display:inline-block;
	margin:0 40px 0 0;
	letter-spacing:0.15em;
}
.Topmenu2 .top_title2 span{
	background:#e49d14;
}
.Topmenu .top_title2 img{
	display:block;
}
.Topmenu .top_title2 + p{
	text-align:center;
	margin:0 0 20px;
}
.Topmenu_inner{
	max-width:1000px;
	margin:0 auto;
}
.Topmenu2 .Topmenu_inner{
	max-width:800px;
}
.Topmenu .uk-grid p.more{
	margin-top:40px;
}
.Topmenu .uk-grid p.more a{
	min-width:initial;
	display:block;
}
.Topmenu2 .uk-grid p.more{
	text-align:center;
	margin:40px auto 0;
}
.Topmenu2 .uk-grid p.more a{
	min-width:initial;
	border-color:#e49d14;
	aspect-ratio: 1 / 1;
	width:140px;
	border-radius:80px;
	color:#e49d14;
	text-align:center;
	display: flex;
	justify-content: center;
	align-items: center;
	padding:0 10px 20px;
	line-height:140%;
	margin:0 auto;
}
.Topmenu2 .uk-grid .more a:before {
    left: 50%;
    right: auto;
	top:auto;
	bottom:20px;
    transform: translateX(-50%);
    background-color: #e49d14;
}
.Topmenu2 .uk-grid .more a:hover{
	background-color: #e49d14;
	color:#fff;
}

@media screen and (max-width : 959px){
	.Topmenu:before {
		top: 80px;
	}
	.Topmenu .top_title2 {
		margin: 0 0 100px auto;
	}
	.Topmenu2 .top_title2 {
		margin: 0 0 140px auto;
	}
	.Topmenu .top_title2 + p {
		text-align: left;
	}
	.Topmenu .uk-grid p.more a {
		padding-left:15px;
	}
	.Topmenu .more a:before {
		right: 15px;
	}
	.Topmenu2 .uk-grid p.more a {
		padding-left:10px;
	}
}
@media screen and (max-width : 639px){
	.Topmenu{
		margin-top:40px;
	}
	.Topmenu:before{
		height:250px;
		top:40px;
	}
	.Topmenu2:before{
		top:40px;
	}
	.Topmenu .top_title2{
		margin:0 0 60px auto; 
	}
	.Topmenu2 .top_title2{
		margin:0 0 80px auto; 
	}
	.Topmenu .top_title2 span{
		padding:15px 10px;
		font-size:18px;
		margin:0 20px 0 0;
	}
	.Topmenu .top_title2 img{
		width:40px;
	}
	
	.Topmenu .uk-grid p.more {
		margin-top: 10px;
	}
	.Topmenu2 .uk-grid{
		margin-left:-10px;
	}
	.Topmenu2 .uk-grid >*{
		padding-left:10px;
	}
	.Topmenu2 .uk-grid p.more a {
		width: calc(100% - 20px);
		padding: 0 10px 20px;
	}
	.Topmenu2 .uk-grid .more a:before {
		bottom: 12px;
		background-size:10px;
		width:20px;
	}

}



/* Topmenu3
-------------------------------------------------------------------*/
.Topmenu3 .uk-grid >*{
	margin:0 0 40px;
}
.Topmenu3 a{
	display:block;
	background:#f7f7f7;
	border-radius:10px;
	padding:30px;
	text-decoration:none;
	position:relative;
}
.Topmenu3 .uk-grid >*:first-child a:before,
.Topmenu3 .uk-grid >*:nth-child(2) a:before,
.Topmenu3 .uk-grid >*:nth-child(3) a:before{
	content:"";
	background:url(img/icon3.svg) no-repeat center center/contain;
	width:63px;
	height:32px;
	position:absolute;
	top:-16px;
	left:50%;
	transform:translatex(-50%);
}
.Topmenu3 a:hover{
	display:block;
	background:#eee;
}
.Topmenu3 a h3{
	font-size:22px;
	margin:0 0 15px;
	letter-spacing:0.1em;
	line-height:160%;
	font-weight:600;
}
.Topmenu3 a p:last-child {
	text-align:right;
	color:#55b0d9;
	font-size:20px;
	margin:0;
	position:relative;
	padding-right:40px;
	line-height:120%;
}
.Topmenu3 a p:last-child:before{
	position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 26px;
    aspect-ratio: 1 / 1;
    content: '';
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    border-radius: 50%;
    background: #55b0d9 url(img/more.svg) no-repeat center center / 13px;
}
.Topmenu3 a:hover p:last-child:before{
	right:-10px;
}
.menu_icon1,
.menu_icon2,
.menu_icon3{
	width:100%;
	height:86px;
	background:url(img/menu_icon1.svg) no-repeat center center/contain;
	margin:30px 0 30px;
}
.menu_icon2{
	background-image:url(img/menu_icon2.svg);
}
.menu_icon3{
	background-image:url(img/menu_icon3.svg) ;
}
@media screen and (max-width : 959px){

}
@media screen and (max-width : 639px){
	.Topmenu3 .uk-grid >*{
		margin:0 0 15px;
	}
	.Topmenu3 a{
		padding:20px 15px;
	}
	.Topmenu3 .uk-grid >*:first-child a:before,
	.Topmenu3 .uk-grid >*:nth-child(2) a:before,
	.Topmenu3 .uk-grid >*:nth-child(3) a:before{
		width:40px;
		height:20px;
		top:-10px;
	}
	.Topmenu3 .uk-grid >*:first-child a h3,
	.Topmenu3 .uk-grid >*:nth-child(2) a h3,
	.Topmenu3 .uk-grid >*:nth-child(3) a h3{
		text-align:center;
	}
	.Topmenu3 a h3{
		font-size:15px;
		margin:0 0 10px;
	}
	.Topmenu3 a p:last-child {
		font-size:14px;
		padding-right:30px;
	}
	.Topmenu3 a p:last-child:before{
		width: 20px;
		background-size:10px;
	}
	.menu_icon1,
	.menu_icon2,
	.menu_icon3{
		height:50px;
		margin:10px 0 20px 0 ;
	}
}





/* topcase
-------------------------------------------------------------------*/
.topcase{
	background:#f9efdc;
	padding:160px 0;
}
.case-list {
	padding:0;
}
.case-list li {
	margin:0;

	list-style:none;
}

.case-list li a{
	display:block;
	text-decoration:none;
	position:relative;
}
.archivelist .case-list li a{
	margin-bottom:40px;	
}
.case-list li a > div:first-child{
	overflow:hidden;
	background-color:#fff;
	border-radius:15px;
}
.case-list .i-cat {
	background:#e49d14;
	color:#fff;
	font-size:12px;
	padding:5px 15px;
	border-radius:50px;
}
.contents .case-list .i-cat {
	font-size:10px;
	padding:5px 10px;
}
.thumbnail,
.noimage{
	background-position:center center;
	background-repeat:no-repeat;
	width:100%;
	aspect-ratio: 3 / 2;
	transition:0.4s;
}
.noimage{
	background-size:80px;
}
.thumbnail{
	background-size:cover;
}
.case-list li a:hover .thumbnail,
.case-list li a:hover .noimage{
	transform:scale(1.1);
}
.case_txt{
	padding:15px 15px 0;
}
.case-list li a h3,
.case-list li a h4{
	font-size:16px;
	margin:5px 0 0;
	line-height:180%;
	transition:0.4s;
	font-weight:400;
}
.case-list li a:hover h3,
.case-list li a:hover h4{
	color:#e49d14;
}
.case-list li.no_post{
	text-align:center;
	width:100%;
	margin-top:100px;
}
p.no_post{
	width:100%;
	text-align:center;
}
@media screen and (max-width : 959px){
	.topcase{
		padding:80px 0;
	}
	.case-list li a h3,
	.case-list li a h4{
		margin:5px 0 0;
		line-height:160%;
	}
	.case_txt{
		padding:10px 0 0;
	}
	.case-list .i-cat{
		font-size:10px;
		padding:5px;
		margin:5px 1px 0 0;
	}
	.case-list .date{
		display:block;
	}
}
@media screen and (max-width : 639px){
	.topcase{
		padding:40px 0;
	}
	.case-list li a h3,
	.case-list li a h4{
		font-size:14px;
		margin-bottom:25px;
	}
	.case-list .i-cat{
		margin:10px 1px 0 0;
	}
	.case-list li.no_post{
		margin-top:40px;
	}

}




/*==================================================================
page settings
===================================================================*/
/* 固定ページ
-------------------------------------------------------------------*/
.contents {
	margin:0 auto ;
	max-width:1080px;
}

.contents_area .uk-grid >* img{
	margin:0 auto 20px;
}
.contents_area section,
.contents div{
	overflow:hidden;
}
.contents_area section:first-child > h2{
	margin-top:0;
}
.contents h2,
.contents h3,
.contents h4{
	clear:both;
}
.contents_area h2 + .uk-grid >* h3,
.contents_area h3 + .uk-grid >* h4{
	margin-top:0;
}
.contents_area h2 + .uk-grid >*>*:last-child {
	margin-bottom:40px;
}
.contents .top_title{
	margin:40px 0 120px;
	padding:0;
}
.contents_area p.more{
	margin-bottom:40px;
}
.contents .uk-grid > p.more {
	display:block;
	max-width:initial;
	width:auto;
}
.contents h3 span.fonts{
	font-size:14px;
}
.contents h3 span.strong{
	font-size:12px;
}
@media screen and (max-width : 959px){
	.contents .top_title{
		margin:0 0 80px;
	}
}
@media screen and (max-width : 639px){
	.contents .top_title{
		margin:0 0 50px;
	}
	.contents_area p.more{
		margin-bottom:20px;
	}
	.contents .uk-grid > p.more {
		margin-top:15px;
		width:100%;
	}
}

/* page_keyv
-------------------------------------------------------------------*/
.page_keyv{
	background:url(img/footer_img.jpg) no-repeat center center/cover ;
	height:260px;
	position:relative;
}

@media screen and (max-width : 959px){
	.page_keyv{
		height:200px;
	}

}
@media screen and (max-width : 639px){
	.page_keyv{
		height:140px;
	}
}

/* bl
-------------------------------------------------------------------*/
.bl{
	padding: 20px 40px;
	margin:0 auto;
}
.bl ul{
	padding:0;
	margin:0;
}
.bl li,
.bl ul >li:not(.uk-active)>span,
.bl a,
.bl a span{
	position:relative;
	display:inline-block;
	font-size:12px;
	margin:0;
	color:#443227;

}
.bl li:after{
	content:" / ";
	margin:0 5px;
}
.bl li:last-child:after{
	content:none;
}
.bl ul >li:nth-child(4) span{
	max-width:20em;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-top:0.5em;
	line-height:100%;
}
.bl >*{
	flex:initial;
}
.bl ul >li > a{
	text-decoration:none;
}
.bl ul >li > a span:hover{
	text-decoration:underline;
}
.bl ul >li > a + a {
	position:relative;
}
.bl ul >li > a + a:before {
	content:",";
	margin:0 5px;
}
@media screen and (max-width : 959px){
	.bl{
		padding: 20px;
	}
}
@media screen and (max-width : 639px){
	.bl{
		padding: 10px;
	}
	.bl ul{
	float:none;
}
	.bl a,
	.bl,
	.bl >li:not(.uk-active)>span,
	.bl ul li,
	.bl ul li span{
		font-size:10px;
	}
	.bl ul >li:nth-child(4) span,
	.bl ul >li:nth-child(3) span{
		font-size:10px;
	}
	.bl >:nth-child(n+2):not(.uk-first-column)::before{
		margin: 0 5px;
	}
	.bl >* >*{
		display:inline;
	}
}




/* page_ttl
-------------------------------------------------------------------*/
.title1,
.single h2{
	margin:80px 0 60px 0;
	padding:35px 15px 55px;
	font-size:26px;
	font-weight:600;
	letter-spacing:0.1em;
	line-height:160%;
	position:relative;
	text-align:center;
	color:#222;
}
.title1:before,
.single h2:before{
	content:"";
	background:url(img/icon.svg) no-repeat center center/contain;
	width:60px;
	height:30px;
	position:absolute;
	bottom:0;
	left:50%;
	transform:translatex(-50%);
}
.title1:after,
.single h2:after{
	content:"";
	border-top:double 5px #55b0d9;
	width:20%;
	height:4px;
	position:absolute;
	top:0;
	left:50%;
	transform:translatex(-50%);
}

.title2,
.single h3{
	font-size:19px;
	margin:60px 0 40px 0;
	font-weight:600;
	letter-spacing:0.1em;
	padding:15px 15px 15px 25px;
	position:relative;
	color:#222;
	border-top:1px solid #ddd;
	border-bottom:1px solid #ddd;
	background:#f7f7f7;
}
.title2:before,
.single h3:before{
	content:"";
	background:#00407a;
	height:70%;
	width:6px;
	position:absolute;
	top:15%;
	left:0;
}
p.title2{
	margin-top:0;
}
.title2 span,
.single h3 span{
	font-size:70%;
	color:#666;
	display:inline-block;
	margin-left:15px;
	vertical-align:middle;
}
.title3,
.single h4{
	font-size:18px;
	margin:40px 0 30px 0;
	padding:0 0 10px 10px;
	letter-spacing:0.05em;
	border-bottom:double 3px #ddd;
	font-weight:600;
	color:#222;
}

@media screen and (max-width : 959px){

}
@media screen and (max-width : 639px){
	.title1,
	.single h2{
		margin:30px 0 20px 0;
		padding:20px 0 40px;
		font-size:17px;
		letter-spacing:0.05em;
	}
	.title1:before,
	.single h2:before{
		height:20px;
	}
	.title2,
	.single h3{
		font-size:15px;
		margin:20px 0 15px 0;
		letter-spacing:0.05em;
		padding:12px 10px 12px 20px;
	}
	.title3,
	.single h4{
		margin:20px 0 15px 0;
		font-size:14px;
		padding:10px 0;
	}
	.single img{
		display:block;
		margin:0 auto 20px;
	}
	.title2 + .title3{
		margin-top:0;
	}

}

/* flow
-------------------------------------------------------------------*/
.flow{
	background:#fcf6ea;
	padding:30px  40px 40px;
	border-radius:15px;
	clear:both;
	overflow:visible;
}
.flow .title2{
	margin-top:0;
	background:#fff;
}
.flow >*:last-child{
	margin-bottom:0;
}
.triangle{
	width: 0;
	height: 0;
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
	border-top: 30px solid #fcf6ea;
	margin:0 auto 20px;
}
@media screen and (max-width : 639px){
	.flow{
		padding:15px 20px 20px;
	}
	.triangle{
		width: 0;
		height: 0;
		border-left: 20px solid transparent;
		border-right: 20px solid transparent;
		border-top: 20px solid #fcf6ea;
		margin:0 auto 15px;
	}
}


/* text_box
-------------------------------------------------------------------*/
.sBox{
	padding:30px 60px;
	margin:30px 0;
	background:#f7f7f7;
	clear:both;
	border-radius:10px;
}
.sBox2{
	padding:30px 60px;
	margin:30px 0;
	background:#fff6e8;
	clear:both;
	border-radius:10px;
	border:dotted 2px #e49d14
}
.sBox2 > *{
	text-align:center;
	font-weight:bold;
}
.sBox > *:last-child,
.sBox2 > *:last-child{
	margin-bottom:0;
}
.sBox > *:first-child{
	margin-top:0;
}
@media screen and (max-width : 639px){
	.sBox,
	.sBox2{
		padding:15px;
	}
}

.cta{
	padding:60px;
	margin:0 0 40px 0;
	background:#fff6e8;
	clear:both;
	border-radius:10px;
	border:solid 2px #e49d14
}
.cta > *:last-child{
	margin-bottom:0;
}
.cta h2{
	font-size:26px;
	margin:0 0 30px;
	border-bottom:4px double #e49d14;
	padding:0 0 20px;
	text-align:center;
	font-weight:bold;
}
.cta h2 span{
	display:block;
	color:#e49d14;
	font-weight:bold;
	font-size:40px;
	margin:0 0 15px;
}
.tel_link {
    color: #e49d14;
    background: url(img/icon_tel.svg) no-repeat left center / 27px;
    padding: 0 0 0 40px;
    font-size: 30px;
	text-decoration:none;
	font-weight:normal;
}

@media screen and (max-width : 639px){
	.cta{
		padding:15px 15px 25px;
		margin:0 0 20px;
	}
	.tel_link {
		background: url(img/icon_tel.svg) no-repeat left center / 20px;
		padding: 0 0 0 30px;
		font-size: 28px;
	}
	.cta h2{
		font-size:20px;
		margin:0 0 20px;
		padding:0 0 15px;
	}
	.cta h2 span{
		font-size:30px;
		margin:0 0 10px;
	}
}

/* 目次
-------------------------------------------------------------------*/
div#ez-toc-container{
	width:calc(100% - 62px)!important;
	padding:30px;
	border-radius:0;
	margin-bottom:60px;
	box-shadow:6px 6px 20px rgba(189,189,189,0.1);
	border-color:#aaa;
}
#ez-toc-container.counter-hierarchy ul{
	margin-top:20px;
}

#ez-toc-container.counter-hierarchy ul li a{
	display:block;
	border-bottom:1px dashed #aaa;
	padding:5px 45px 5px 10px;
	background:url(img/more.svg) no-repeat right 15px center/20px;
	color:#111;
}
#ez-toc-container.counter-hierarchy ul li a:hover{
	background:#fff url(img/more.svg) no-repeat right 10px center/20px;
	text-decoration:none;
}
#ez-toc-container.counter-hierarchy ul li:last-child{
	margin-bottom:10px;
}
.ez-toc-title-container{
	text-align:center;
}
@media screen and (max-width : 959px){

}
@media screen and (max-width : 639px){
	div#ez-toc-container{
		width:calc(100% - 45px)!important;
		padding:15px 15px 10px ;
		margin-bottom:30px;
	}
	#ez-toc-container.counter-hierarchy ul{
		margin-top:15px;
	}
	#ez-toc-container.counter-hierarchy ul li a,
	#ez-toc-container.counter-hierarchy ul li a:hover{
		background-position:right 5px center;
	}

}


/* faq_list
-------------------------------------------------------------------*/
.faq_list{
	padding:0;
	margin:0;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left:-30px;
}
.faq_list li{
	list-style:none;
	padding:0;
	width:calc(33.33% - 30px);
	margin:0 0 15px 0;
	padding-left:30px;
}
.faq_list li a{
	text-decoration:none;
	display:block;
	font-weight:600;
	padding:15px 60px 15px 15px;
	background:#f5f5f5;
	border-radius:5px;
	position:relative;
	height:100%;
}
.faq_list li a:before{
	left:auto;
	right:15px;
	top:50%;
	transform:translatey(-50%);
}
.faq_list li a:hover{
	background:#f7ea81;
	color:#3d4159;
}
.faq_list li a:hover:before{
	right:5px;
}
@media screen and (max-width : 959px){
	.faq_list li{
		width:calc(50% - 30px);
	}
}
@media screen and (max-width : 639px){
	.faq_list{
		margin-left:0;
	}
	.faq_list li{
		width:100%;
		margin:0 0 5px 0;
		padding-left:0;
	}
}

.movie iframe{
	aspect-ratio: 16 / 9;
}


/*==================================================================
single settings
===================================================================*/
/* 投稿ページ,アーカイブ
-------------------------------------------------------------------*/
.singlepage{
	margin:40px auto 0;
}
.singlepage .top_title{
	margin:0 0 30px;
	font-size:24px;
	letter-spacing:0.02em;
}
.singlepage .top_title span{
	margin-top:10px;
}
.singlepage .uk-grid{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.singlepage > .uk-grid >*:first-child{
	width:calc(77% - 70px);
	padding-right:70px;
} 
.singlepage > .uk-grid >*:last-child{
	width:23%;
} 
.single{
	background:#f7f7f7;
	padding:40px;
}
.single + .uk-grid {
	margin-left:0;
}
.single + .uk-grid >*{
	width:50%;
	padding-left:0;
} 
.single_more > *:first-child a{
	padding-right:30px;
	padding-left:80px;
}
.single_more > *:first-child a:before{
	transform:none;
	transform: rotate(180deg);/* 回転 */;
	right:auto;
	left:30px;
	top:calc(50% - 10px);
}
.single_more > *:first-child a:hover:before{
	left:20px;
}
.single_more >* p.more a{
	line-height:140%;
	font-size:13px;
	height: 1.5em;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	max-width:20em;
}
.single_more >* p.more a:before{
	width:20px;
	background-size:10px;
}
.single_cat {
	margin:30px 0 0 0 ;
	padding:20px 0 0 0;
	border-top:solid 1px #ddd;
}
.single_cat p{
	margin:0;
	font-size:14px;
}
.single_cat .i-cat{
	padding:0;
	background:none;
	margin:0;
	line-height:180%;
}
.single_cat .i-cat a{
	font-size:13px;
	padding:0;
	color:#fff;
	background:#e49d14;
	padding:0 15px;
	border-radius:30px
}

.single_cat .i-cat a:hover{
	background:#bf8313;
}
.single .top_title{
	margin:0;
	font-weight:600;
	font-size:36px;
	padding:0;
	text-transform: uppercase;
	color:#55b0d9;
}
.single .top_title span{
	display:block;
	font-size:14px;
	line-height:100%;
	margin:0;
	color:#666;
}
.single h1{
	font-size:20px;
	line-height:180%;
	text-align:center;
}
.archivelist .case-list li a > div:first-child{
	background-color:#f7f7f7;
}
@media screen and (max-width : 959px){
	.archivelist{
		width:100%;
	}
	.singlepage > .uk-grid >*:first-child{
		width:100%;
		padding-right:0;
	} 
	.singlepage > .uk-grid >*:last-child{
		width:100%;
		margin-top:40px;
	} 
	.single_more > * a{
		min-width:initial;
		display:block;
		margin:0 10px;
	}
}

@media screen and (max-width : 639px){
	.singlepage{
		margin:0 auto 0;
	}
	.uk-container .single{
		padding:20px 15px;
	}
	.singlepage .top_title{
		margin:0 0 10px;
		font-size:20px;
	}
	.singlepage .top_title span{
		margin-top:0;
		font-size:10px;
	}
	.singlepage .i-cat{
		margin-bottom:10px;
	}
	.singlepage .i-cat a{
		font-size:10px;
	}
	.single + .uk-grid >*{
		width:100%;
	} 
	.single_more >* p.more a{
		margin:0 ;
		max-width:initial;

	}
	.single_more >* p.more a:before{
		right:15px;
	}
	.single_more > *:first-child a:before{
		left:15px;
		top: calc(50% - 12px);
	}
	.single_more > *:first-child a {
		padding-right: 15px;
		padding-left: 50px;
	}
	.singlepage .uk-grid{
		display:block;
	}
	.single h1{
		font-size:16px;
		line-height:160%;
		margin:15px 0 5px;
	}
}


/*   single_case
-------------------------------------------------------------------*/
.single .date{
	text-align:right;
	margin:0 0 30px 0;
	padding:0 0 15px 0;
	display:block;
	border-bottom:3px double #ddd;
}
.case_single_img{
	margin:0 0 40px;
}
.case_single_img .uk-grid{
	justify-content: center;
	margin:0;
}
.case_single_img .uk-grid >*{
	width:calc(33.333% - 20px);
	padding:0;
	margin:0 10px;
}
.case_img{
	min-height:200px;
	margin-bottom:10px!important;
	background-size:contain;
	background-repeat:no-repeat;
	background-color:none;
	background-position:center top;
}
.single .case_single_img h2{
	border:none;
	padding:0;
	margin:0 0 20px;
	background:none;
}
.single .case_single_img h2:before{
	content:none;
}
.single .case_single_img h2 span{
	background: #55b0d9;
	color:#fff;
	padding:3px 15px 5px;
	font-size:14px;
	display:block;
	line-height:100%;
	border-radius:30px;
}
.case_comment{
	background:rgba(255,255,255,0.8);
	font-size:13px;
	text-align:left;
	margin-top:25px;
	line-height:180%;
}
@media screen and (max-width : 959px){
	.case_single_img{
		margin:0 0 30px;
	}
	.case_single_img .case_img{
		min-height:140px;
	}
}
@media screen and (max-width : 639px){
	.case_single_img{
		margin:0 0 20px;
	}
	.case_single_img .case_img{
		min-height:100px;
	}
	.case_single_img .uk-grid{
		display:flex;
	}
	.case_single_img .uk-grid >*{
		width:calc(50% - 10px);
		margin:0 5px;
	}
	.single .date{
		margin:0 0 15px 0;
		padding-bottom:15px;
	}
	.single .case_single_img h2{
		margin:0 0 10px;
	}
	.single .case_single_img h2 span{
		font-size:12px;
	}
	.case_comment{
		font-size:12px;
		margin-top:10px;
		line-height:160%;
	}
}


/*   pagination
-------------------------------------------------------------------*/
.pagination {
	width: 100%;
	text-align: center;
	z-index: 200;
	list-style-type: none;
	padding:0;
	margin:40px 0 0 0;
}

.pagination a {
	margin: 0 5px;
	width: 15px;
	height: 15px;
	display: inline-block;
	overflow: hidden;
}
.pagination a.next,
.pagination a.prev{
	width: 60px;
}
.pagination a.active {
	filter:alpha(opacity=100)!important;
	-moz-opacity: 1!important;
	opacity: 1!important;
}
.pagination,
.pagination li a,
.pagination a,
.pagination span,
.nav-links {
	display: flex;
	justify-content: center;
	align-items: center;
}


/* 色変更箇所*/
.pagination a,
.pagination span{
	font-weight: 500;
	padding-top: 1px;
	text-decoration:none;
	border-left-width: 0;
	min-width:36px;
	min-height:36px;
	color: #222;
	background-color: #f7f7f7;
	border-radius:40px;
}

/* 色変更箇所*/
.pagination li:not([class*="current"]) a:hover,
.pagination a:hover,
.pagination span.current{
	background:#55b0d9;
	color:#fff;
}

.pagination li:first-of-type a {
	border-left-width: 1px;
}

.pagination li.first span,
.pagination li.last span,
.pagination li.previous span,
.pagination li.next span {
	/* screen readers only */
	position: absolute;
	top: -9999px;
	left: -9999px;
}

.pagination li.first a::before,
.pagination li.last a::after,
.pagination li.previous a::before,
.pagination li.next a::after {
	display: inline-block;
	font-family: Fontawesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0, 0);
}


/* 色変更箇所*/
.pagination li.current a {
	background:#55b0d9;
	cursor: default;
	pointer-events: none;
	color:#fff;
}



@media only screen and ( max-width: 639px ) {
	.pagination li.first,
	.pagination li.last {
		/* screen readers only */
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	.uk-container .pagination li{
		padding:0;
		margin:0 0 20px;
	}
	.pagination li.previous a {
		border-left-width: 1px;
	}
	.pagination {
		margin:0;
	}
	.pagination a,
	.pagination span{
		min-width:26px;
		min-height:26px;
		font-size:12px;
	}
}




/*==================================================================
sidebar settings
===================================================================*/
aside li{
	list-style:none;
}
aside li a{
	text-decoration:none;
}
@media only screen and ( max-width: 959px ) {

}

/* side menu ttl
-------------------------------------------------------------------*/
.side_nav{
	margin-bottom:30px;
	border-bottom:none;
}
.side_nav a{
	color:#fff;
}
.side_nav > ul{
	padding:0 5px 5px 5px;
	margin:0;
}
.side_nav_ttl {
	padding:6px 10px;
	text-align:center;
	letter-spacing:0.2em;
	font-size:15px;
	font-weight:normal;
	margin:0;
	color:#fff;
	background:#55b0d9;
	border-radius:10px 10px 0 0;
}
.side_nav_ttl a{
	color:#fff;
	font-size:14px;
	text-decoration:none;
}


/* side menu list
-------------------------------------------------------------------*/
.side_nav_item ul {
	margin:0 ;
	border-top:none;
	background:#f7f7f7;
	padding:0 ;
}
.side_nav_item{
	margin:0;
}
.side_nav_item ul li {
	position:relative;
	margin:0;
}
.side_nav_item ul li a {
	display:block;
	padding:10px 40px 10px 20px;
	font-size:13px;
	line-height:160%;
	color:#222;
	border-bottom:1px dotted #ddd;
	position:relative;
}
.side_nav_item ul li a:before {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 15px;
    aspect-ratio: 1 / 1;
    content: '';
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    border-radius: 50%;
    background: #55b0d9 url(img/more.svg) no-repeat center center / 8px;
}
.side_nav_item ul li:last-child a{
	border:none;
}
.side_nav_item ul li a:hover{
	background:#eee;
}
.side_nav_item ul li a:hover:before  {
	right: 10px;
}
.side_nav_item .date{
	display:block;
	margin:5px 0 5px 0;
	color:#999;
}
.side_nav_item .i-cat{
	font-size:10px;
}


/*==================================================================
footer settings
===================================================================*/
/* footer_img
-------------------------------------------------------------------*/
.footer_img{
	height:508px;
	background:url(img/footer_img.jpg) no-repeat center center/cover;
	margin:160px 0 0 0;
	position:relative;
}
.toppage + .footer_img{
	margin: 0;
}
@media screen and (max-width : 959px){
	.footer_img{
		height:300px;
		margin:80px 0 0 0;
	}
}
@media screen and (max-width : 639px){
	.footer_img{
		height:180px;
		margin:40px 0 0 0;
	}
}

/* cv
------------------------------------------------------------------*/
.cv{
	margin:-70px 0 100px 0;
	padding:0;
}
.cv img {
	margin: 0 auto 100px;
	display:block;
}
.cv .uk-grid >*:first-child{
	width:calc(40% - 70px);
}
.cv .uk-grid >*:last-child{
	width:calc(60% - 70px);
}
.cv a{
	text-decoration:none;
	color:#e49d14;
	font-size:32px;
	position:relative;
	padding-left:32px;
	letter-spacing:0.05em;
	vertical-align:middle;
	line-height:100%;
}
.cv a:before{
	content:"";
	background: url(img/icon_tel.svg) no-repeat center center/contain;
	width:26px;
	aspect-ratio: 1 / 1;
	position:absolute;
	top:50%;
	left:0;
	transform:translatey(-50%);
}
.cv a + span{
	font-size:16px;
	vertical-align:middle;
	display:inline-block;
	margin-left:10px;
	color:#e49d14;
}
.cv a + span span{
	font-size:12px;
	color:#222222;
	vertical-align:middle;
	display:block;
	margin:0;
	line-height:100%;
}
.footer_map iframe{
	border-radius:15px;
}
@media screen and (max-width : 959px){
	.cv{
		margin:-50px 0 60px 0;
	}
	.cv img {
		margin: 0 auto 40px;
	}
	.cv .uk-grid >*:first-child{
		width:100%;
	}
	.cv .uk-grid >*:last-child{
		width:100%;
		height:300px;
	}

}
@media screen and (max-width : 639px){
	.cv{
		margin:-30px 0 0 0;
	}
	.cv img {
		margin: 0 auto 30px;
		width:200px;
	}
	.footer_map iframe{
		height:240px;
	}

}

/* cv 診療時間
-------------------------------------------------------------------*/
.sheet-time {
	width:100%;
	border-collapse:collapse;
	border-spacing:0px;
}
.sheet-time th,
.sheet-time td{
	vertical-align:middle;
	padding:12px 5px;
	text-align:center;
	font-weight:400;
	background:#f7f7f7;
}
.sheet-time th{
	letter-spacing:2px;
	background:#55b0d9;
	color:#fff;
}
.sheet-time tr:first-child{
	letter-spacing:0.1em;
}
.sheet-time td{
	width:7%;
}
.sheet-time td.color{
	color:#55b0d9;
}
.sheet-time th:first-child,
.sheet-time td:first-child{
	text-align:left;
	padding-left:20px;
}
p.about_time{
	padding:20px 0 0 20px;
	line-height:160%;
	text-align:left;
	font-size:14px;
}
@media screen and (max-width : 959px){
	.access-time{
		margin:30px 0 0 0;
	}
}
@media screen and (max-width : 639px){
	.access-time{
		margin:20px 0 0 0;
	}
	.sheet-time th,
	.contents table.sheet-time th{
		letter-spacing:0;
		padding:8px 0;
	}
	.sheet-time td,
	.contents table.sheet-time td{
		width:7%;
		padding:8px 0;
		font-size:13px;
	}
	.sheet-time th:first-child,
	.sheet-time td:first-child,
	.contents .sheet-time th:first-child,
	.contents .sheet-time td:first-child{
		padding-left:10px;
	}
	p.about_time{
		padding:15px 0;
		font-size:13px;
	}
}




/* sitemap
-------------------------------------------------------------------*/
footer{
	background:#f7f7f7;
	padding:100px 0 0 0;
}
.footer_sitemap .uk-grid{
	margin-bottom:100px;
}
.footer_sitemap .uk-grid >*{
	width:calc(25% - 40px);
}
.footer_sitemap .uk-grid >*:nth-child(2){
	width:calc(50% - 40px);
}
.footer_sitemap .uk-grid >*:nth-child(2) ul{
	width:calc(50% - 20px);
	float:left;
	margin-right:20px;
}
.footer_sitemap h3{
	color:#222;
	margin:0 0 30px;
	font-size:18px;
	font-weight:400;
	position:relative;
}
.footer_sitemap h3:before{
	content:"";
	background:#aaaaaa;
	width:calc(100% - 9em);
	position:absolute;
	top:50%;
	right:20px;
	height:1px;
}
.footer_sitemap ul{
	margin:0;
	padding:0;
}
.footer_sitemap ul li{
	display:block;
	margin:0;
}
.footer_sitemap ul li a{
	text-decoration:none;
	color:#222;
	position:relative;
	font-size:14px;
}
.footer_sitemap ul li a:hover{
	color:#e49d14;
	text-decoration:underline;
}

@media screen and (max-width : 959px){
	.footer_sitemap ul li{
		margin:0 0 10px;
	}
	footer{
		padding:60px 0 0 0;
	}

}

@media screen and (max-width : 639px){
	footer{
		padding:30px 0 0 0;
	}
	.footer_sitemap .uk-grid{
		margin-bottom:20px;
	}
	.footer_sitemap .uk-grid >*{
		width:calc(100% - 15px);
	}
	.footer_sitemap .uk-grid >*:nth-child(2){
		width:calc(100% - 15px);
	}
	.footer_sitemap .uk-grid >*:nth-child(2) ul{
		width:50%;
		margin:0 0 20px;
	}
	.footer_sitemap ul {
		margin:0 0 20px;
	}
	.footer_sitemap ul li{
		margin:0 0 5px;
	}
	.footer_sitemap h3{
		margin:15px 0;
		font-size:17px;
	}
	.footer_sitemap ul li a{
		font-size:12px;
	}
}

/* footer_bnr
-------------------------------------------------------------------*/
.footer_bnr{
	margin-bottom:160px;
}
.footer_bnr img{
	margin-bottom:20px;
	display:block;
}
.footer_bnr .uk-grid{
	justify-content: space-between;
	flex-wrap: nowrap;
}
.footer_bnr .uk-grid >*:first-child {
	max-width:1000px;
}
.footer_bnr .uk-grid >*:last-child {
	max-width:222px;
}
.footer_bnr .uk-grid .uk-grid {
	justify-content: center;
	flex-wrap: wrap;
}
.footer_bnr .uk-grid .uk-grid >* img{
	height:75px;
}
@media screen and (max-width : 959px){
	.footer_bnr{
		margin-bottom:60px;
	}
}

@media screen and (max-width : 639px){
	.footer_bnr .uk-grid{
		flex-wrap: wrap;
		justify-content: center;
	}
	.footer_bnr{
		margin-bottom:30px;
	}
}


/* sign
-------------------------------------------------------------------*/
.footer_sign{
	padding:20px 10px;
	background:#55b0d9;
}
.footer_sign p {
	text-align:center;
	color: #fff;
	font-size:12px;
	margin:0;
	letter-spacing:0.1em;
	padding:0;
}
.footer_sign a{
	color: #fff;
}
@media screen and (max-width : 639px){
	.footer_sign p {
		letter-spacing:0px;
		font-size:10px;
	}
	.footer_sign{
		padding: 10px;
	}
}



/* pagetop
-------------------------------------------------------------------*/
#page-top {
	position: fixed;
	bottom: 60px;
	right: 10px;
	margin:0;
	z-index:900;
}
#page-top a {
	background: url(./img/pagetop.png) no-repeat 0 0/contain;
	z-index:10;
	text-indent:-5000px;
	text-decoration: none;
	color: #fff;
	width: 70px;
	height:70px;
	text-align: center;
	display: block;
}
@media screen and (max-width : 959px){
	#page-top {
		bottom: 100px;
	}
}
@media screen and (max-width : 639px){
	#page-top {
		bottom: 120px;
		right:0;
	}
	#page-top a {
		width: 40px;
		height:40px;
	}
}


/*==================================================================
  form setting
===================================================================*/
.indispensable{
	display:inline-block;
	font-size:12px;
	color:#fdcd07;
	line-height:140%;
	margin:0;
}
/* form
-------------------------------------------------------------------*/
input[type="submit"],
input[type="button"],
input[type="reset"],
input[type="radio"],
input[type="checkbox"],
input[type="number"],
label,
button {
	cursor: pointer;
}
input[type="checkbox"],
input[type="radio"] {
	vertical-align: middle;
}
input[type="hidden"] {
	*float: left;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="number"],
textarea,
select{
	width: calc(100% - 42px);
	outline: none;
	-webkit-appearance: none;
	border: 1px solid #ddd ;
	background-color: #FFFFFF !important;
	padding:15px 20px;
	font-size:13px;
	border-radius:0;
}
input[type="text"].hasDatepicker{
	width: calc(50% - 42px);
}
select{
	width: 30%;
	background:url(./img/more.svg) no-repeat right 10px center/10px;
}
*[class*="disabled"],
*:disabled {
    cursor: default !important;
}


/* radio btn */
input[type=radio] {
	appearance: none;
	display: none;
}
input[type=radio] + span {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	cursor: pointer;
}
input[type=radio] + span:before {
	font-family: "Font Awesome 5 Free";
	content: "\f111";
	display: inline-block;
	margin-right: 0.5em;
	font-weight: 300;
	color: #ddd;
	font-size:20px;
	vertical-align: middle;
	background:#fff;
	line-height:95%;
	border-radius:15px;
}
input[type=radio]:checked + span:before {
	content: "\f192";
	font-weight: 400;
	color: #fdcd07;
}
@media screen and (max-width : 639px){
	input[type=radio] + span {
		display:block;
	}
	.mw_wp_form .horizontal-item + .horizontal-item{
		margin-left:0!important;
	}
}

/* checkbox btn */
input[type=checkbox] {
	appearance: none;
	display: none;
}
input[type=checkbox] + span:before {
	font-family: "Font Awesome 5 Free";
	content: "\f0c8";
	display: inline-block;
	margin-right: 0.5em;
	font-weight: 300;
	color: #ddd;
	font-size:20px;
	vertical-align: middle;
	background:#fff;
	line-height:95%;
	margin-bottom:0;
	border-radius:2px;
}
input[type=checkbox]:checked + span:before {
	content: "\f14a";
	font-weight: 400;
	color: #fdcd07;
}


/* css btn */
#back,
#confirm,
input[type="submit"]{
	display:inline-block;
	text-decoration:none;
	font-size:15px;
	color:#fff;
	padding:0;
	letter-spacing:0.1em;
	font-weight:600;
	text-align:center;
	background:#416723 url(img/more2.svg) no-repeat 20px center/10px;
	padding:12px 35px 12px 55px;
	min-width:180px;
	-webkit-transition: 0.4s ;
	transition: 0.4s ;
	-webkit-appearance: none;
	margin:0 15px;
	border:none;
	border-radius:0;
}

#confirm:hover,
#back:hover,
input[type="submit"]:hover{
	background-color:#443227;
	transform:0.2s;
}
