@charset "utf-8";

body {
    overflow-x: hidden;
    font-family: 'Noto Serif JP', serif;
    position: relative;
}
#wrapper {
	overflow:hidden;
}
.br {display: block !important; }
.br2 {display: none !important;}
.pc {display: block !important; }
.sp {display: none !important;}

a {
	text-decoration: none;
	color: inherit;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

video {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.center {
    display:block;
    margin:auto;
    text-align:center;
}

.box {
	position: relative;
}
.gs {
	font-family: "YuGothic", "游ゴシック", "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro", "Meiryo","メイリオ",sans-serif;
	font-weight: 500;
}
.modal {
	display: none;
}

.under {
	text-decoration: none;
}

.under:hover {
	text-decoration: underline;
}
/*+++++++++++++
flex
*++++++++++++*/
.block {
	display: block;
}

.inblock {
	display: inline-block;
}
.flex {
    display: flex;
    gap: 30px;
    align-items: center;
}
.wrap {
    flex-wrap: wrap;
}
/*+++++++++++++
2column
*++++++++++++*/
.column2 {
    flex-wrap: wrap;
    gap: 30px;
    align-items: flex-start;
}
.column2 > li {
    width: 38%;
}
/*+++++++++++++
3column
*++++++++++++*/
.column3 {
    flex-wrap: wrap;
    gap: 30px;
    align-items: flex-start;
}
.column3 > li {
    width: 31.5%;
}
/*+++++++++++++
table
*++++++++++++*/
table {
	border-top: 1px solid #ccc;
	width: 100%;
}

tr {
	/* border-bottom: 1px solid rgba(187, 153, 87, 0.3); */
}

th {
	width: 30%;
}

td {
	padding: 30px;
}
/*+++++++++++++
section
*++++++++++++*/
section {
	padding:100px 0;
}
/*+++++++++++++
inner
*++++++++++++*/
.inner {
    max-width: 1300px;
    margin: auto;
    position: relative;
}

.container {
    position: relative;
    background: #fff;
    z-index: 0;
}
.container:before {
    content:"";
}

.w980 {
	max-width: 1000px;
	margin: auto;
}
.w80 {
	max-width: 80%;
	margin: auto;
}
.w90 {
	max-width: 90%;
	margin: auto;
}

/*+++++++++++++
color
*++++++++++++*/
.wh { color: #fff; }
.gr { color: #ccc; }

/*+++++++++++++
装飾
*++++++++++++*/
hr {
	border-top: none;
	border-color: #ccc;
	padding: 10px 0 0;
	border-left: none;
	border-right: none;
	margin: 0 0 10px;
}
.plus {
    position: relative;
    max-width: 480px;
    margin: auto;
}
.plus:before{
    content:"＋";
    font-size: 20px;
    opacity: 0.5;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    display: flex;
    align-items: center;
}
.plus:after{
    content: "＋";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 20px;
    opacity: 0.5;
}

/*+++++++++++++
font
*++++++++++++*/

/*タイトル*/
.title-card {
    /* z-index: 1; */
    position: relative;
    margin: 0 auto 50px;
}

/*text*/
p {
    line-height: 2;
    letter-spacing: 1px;
    font-size:1em;
}

span {
    font-size: 0.95em;
    line-height: 2;
    font-weight: 500;
    letter-spacing: 1px;
}

em {
	font-style: normal;
	font-size: 0.85em;
	letter-spacing: 1px;
	line-height: 1.8;
}
.gray {
	color:#666;
}

/*font size*/
.small {
    font-size: 1.1em;
}
.medium {
    font-size: 1.4em;
}
.large {
    font-size: 1.6em;
    font-weight: 500;
}
.xlarge {
    font-size: 2em;
    font-weight: 500;
    letter-spacing: 3px;
    line-height: 2;
}

/*bold*/
.bold {
	font-weight:bold;
}

/*letter space*/
.letter {
    letter-spacing: 2px;
    line-height: 2.5;
}
.title {
	
}
/*english*/
.entitle {
    font-family: 'Taviraj', serif;
    background: -webkit-linear-gradient(bottom, #365598, #5eacca);
    background: linear-gradient(to bottom, #365598, #5eacca);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
    padding: 0 0 0 33px;
    text-align: left;
}

.entitle:before {
    content:"";
    background: -webkit-linear-gradient(bottom, #365598, #5eacca);
    background: linear-gradient(to bottom, #365598, #5eacca);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: absolute;
    width: 40px;
    height: 1px;
    transform: rotate(-50deg);
    z-index: 9999;
    left: -1%;
    top: -20px;
    bottom: 0;
    background: #5eacca;
    margin: auto;
}
/*+++++++++++++
h1-h6
*++++++++++++*/
h3 {
	display: flex;
	align-items: center;
}

h3 b {
	font-size: 5em;
	font-weight: 400;
	/* display: block; */
	/* color: #bb9957; */
	letter-spacing: 1px;
	font-family: 'Cormorant', serif;
	line-height: 1.2;
	background: -webkit-linear-gradient(bottom, #365598, #5eacca);
	background: linear-gradient(to bottom, #365598, #5eacca);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
h3 span {
	margin: 0 20px;
	line-height: 1.2;
	padding: 13px 0 0;
	letter-spacing: 2px;
	font-weight: 500;
}

h3.mini b {
	font-size: 2.5em;
	line-height: 1.5;
	text-align: left;

}
h3.mini span{
	padding: 5px 0 0;
	line-height: 1.6;
}



h6 {
	position: relative;
	margin: 0 0 20px;
	font-size: 1.5em;
	letter-spacing: 1px;
	/* border: 1px solid #bb9957; */
	line-height: 1.1;
	display: inline-block;
	/* width: 200px; */
}
h6:before {
	content:"";
	/* background: #bb9957; */
	width: 20px;
	position: absolute;
	height: 1px;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}
/*+++++++++++++
margin
*++++++++++++*/
.mb {margin: 0 0 10px;}
.mb1 {margin: 0 0 30px;}
.mb2 {margin: 0 0 50px;}
.mb3 {margin:0 0 80px;}
.mbx {margin:0 0 300px;}

/*+++++++++++++
button
*++++++++++++*/
.button {
	position: relative;
	padding: 0 0 10px 0;
	font-weight: 500;
	border-bottom: 1px solid rgba(204,204,204,0.5);
	display: block;
	transition: .3s;
	max-width: 300px;
}
.button:before {
}

.button span{
	display: block;
	background-size: 12px;
	transition: .3s;
	position: relative;
	padding: 0;
	width: 100%;
	color: #111;
}

.button span:before {
    content:"";
    background: url("../images/common/arrow.svg") no-repeat;
    width: 16px;
    height: 30px;
    transform: rotate(-90deg);
    background-position: center center;
    right: 3%;
    top: 0;
    position: absolute;
    transition:.3s;
    background-size: 5px;
}
.button:hover span {

}
.button:hover span:before {
    background: url("../images/common/arrow.svg") no-repeat;
	background-position: center center;
	transition: .3s;
    background-size: 5px;	
    right: 0;
    top: 0;		
}


.button::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #111;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}

.button:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/**/
.button.wh span {
	color: #fff;
}
.button.wh span:before {
	background: url("../images/common/arrow_w.svg") no-repeat;
	background-size: 5px;
	background-position: center;
}
.button.wh::after {
	background: #fff;
}
/**/


.button2 {
	border: 1px solid #111;
	padding: 20px 50px;
	display: block;
	border-radius: 100px;
	text-align: center;
	background: rgba(255,255,255,0.2);
}
.button2 p{
	font-weight: bold;
	font-size: 1.1em;
	letter-spacing: 1px;	
}
.button2.date p {
	background: url("../images/common/date_w.svg") no-repeat left center;
	background-size: 19px;
	max-width: 85%;
	margin: auto;
	line-height: 2;
}
.button2.books p {
	background: url("../images/common/books.svg") no-repeat left center;
	background-size: 30px;
	max-width: 88%;
	margin: auto;
	line-height: 2;
}

.button2.wh {
	border: 1px solid #fff;	
}

/*+++++++++++++
animation
*++++++++++++*/
.blur {
 	opacity: 0;
    -webkit-transform: scale(1.03);
    transform: scale(1.03);
    -webkit-filter: brightness(4);
    filter: brightness(4);
    transition: 1s cubic-bezier(0.220, 0.65, 0.360, 1);
    transition-property: opacity, -webkit-filter, -webkit-transform;
    transition-property: opacity, filter, transform;
    transition-property: opacity, filter, transform, -webkit-filter, -webkit-transform
}
.blur.mv-blur {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: brightness(1);
    filter: brightness(1)
}
.fade {
	opacity: 0;
	transition: .9s;
	transition-delay:0.9s;
}
.mv-fade {
	opacity: 1;
}
.lowup1 {
	opacity: 0;
	transform: translate(0, 20px);
	-webkit-transform: translate(0, 20px);
	transition: 1.0s;
	transition-delay:0.5s;
}

.lowup2 {
	opacity: 0;
	transform: translate(0, 20px);
	-webkit-transform: translate(0, 20px);
	transition: 1.1s;
	transition-delay:0.6s;
}

.lowup3 {
	opacity: 0;
	transform: translate(0, 20px);
	-webkit-transform: translate(0,20px);
	transition: 1.2s;
	transition-delay:0.7s;
}

.lowup4 {
	opacity: 0;
	transform: translate(0, 20px);
	-webkit-transform: translate(0,20px);
	transition: 1.3s;
	transition-delay:0.8s;
}

.lowup5 {
	opacity: 0;
	transform: translate(0, 20px);
	-webkit-transform: translate(0,20px);
	transition: .9s;
	transition-delay:0.9s;

}

.mv-lowup {
	opacity: 1.0;
	transform: translate(0, 0);
	-webkit-transform: translate(0, 0);
}

/*+++++++++++++
main
*++++++++++++*/
#main {
	padding: 200px 0 0;
}
#main figure {
	height: 500px;
	overflow: hidden;
	margin: 0;
	position: relative;
	width: 98%;
	float: right;
}

#main figure img {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}

/*+++++++++++++
header
*++++++++++++*/
header {
    position: fixed;
    width: 100%;
    padding: 30px 40px;
    box-sizing: border-box;
    z-index: 1;
    top: 0;
    transition: .3s;
    opacity: 1;
}

header a.logo {
    width: 300px;
    display: block;
}

/**/
.drawer-open header {
	z-index: 101;
}
header.is-animation{
	/* position:absolute; */
	/* z-index: 999; */
	transition: .3s;
	/* opacity: 0; */
	width: auto;
}
header.is-animation .drawer-hamburger-icon:before,
header.is-animation .drawer-hamburger-icon:after {
	background: #000;
}
/**/
.drwbox {
	width: 63%;
	position: fixed;
	right: 0;

	padding: 100px 130px;
	box-sizing: border-box;
	z-index: 99;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	height: 100vh;
}
.drwbox ol.drw {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.drwbg {
    float: left;
    background: url(../images/common/drw.jpg) no-repeat center;
    width: 700px;
    height: 100vh;
    top: 0;
    position: relative;
    background-size: 100%;
}

/*Pamphlet*/
.pamphlet {
	background: #f7f7f7;
	padding: 25px 50px 30px;
	margin: 30px 0;
	width: 80%;
}
.pamphlet .pambox.flex {
	gap: 20px;
	justify-content: space-between;
}
.pamphlet a {
	width: 48%;
}

/*+++++++++++++
footer
*++++++++++++*/

#pagetop {
	position: fixed;
	bottom: 0;
	right: 0;
	margin: 30px 50px;
	z-index: 999;
	background: rgba(204,204,204,0.8);
	width: 75px;
	height: 75px;
	border-radius: 100px;
	cursor: pointer;
}

#pagetop:before {
	content:"";
	background: url("../images/common/arrow_w.svg") no-repeat center;
	width: 15px;
	height: 35px;
	transform: rotate(-180deg);
	position: absolute;
	bottom: 0;
	right: 0;
	top: 0;
	left: 0;
	margin: auto;
}

footer {
    width: 100%;
    /* height: 500px; */
    position: relative;
    z-index: 1;
    padding: 150px 0 0;
}
footer:before {
	content:"";
	background: rgba(0,0,0,0.5);
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
}
footer.on {
	background: url("../images/common/footer.jpg") no-repeat;
}
footer > .flex {
	justify-content: space-between;
	align-items: flex-start;
    margin: 0 auto 30px;
}

footer .fbox {
	width: 48%;
}
footer a.flogo {
	display: block;
	width: 380px;
	margin: 0 0 22px;
}

footer .f_innerbox {
	border-top: 1px solid rgba(255,255,255,0.6);
	padding: 30px 0;
	width: 95%;
	position: relative;
}

footer .f_innerbox:before {
	content:"";
	position: absolute;
	width: 98%;
	height: 1px;
	border-top: 1px dotted #fff;
	top: 5px;
	left: 0;
	right: 0;
	margin: auto;
}

a.tel {
	font-family: 'Cormorant', serif;
	/* color: #fff; */
	font-style: italic;
	font-size: 2.5em;
	letter-spacing: 1px;
	font-weight: 500;
	display: flex;
	align-items: flex-end;
	line-height: 1.3;
}
footer .f_innerbox a.tel em{
	margin: 0 5px -3px 0;
	font-size: 0.7em;
}

ol.drw {
	width: 50%;
	gap:20px;
}

footer .fbottombox  {
	border-top: 1px solid rgba(255,255,255,0.2);
	padding: 40px;
	box-sizing: border-box;
}
footer .fbottombox span {
	font-size: 0.8em;
	letter-spacing: 1px;
}

.copyright {
	font-size: 0.6em;
	font-family: 'Taviraj', serif;
	writing-mode: vertical-lr;
	height: auto;
	width: 10%;
	position: absolute;
	bottom: 5%;
	margin: auto;
	padding: 0 20px;
	letter-spacing: 2px;
	font-weight: 300;
}

/*+++++++++++++
sns
*++++++++++++*/
.sns {
	justify-content: left;
	width: auto;
}
.sns a {
	
}
.sns a img {
	width: 20px;
	height: 20px;
}
/*++++++++++++++
navi 各サイト遷移
++++++++++++++*/
.navi {
    width: auto;
    position: fixed;
    top: 0;
    left: inherit;
    right: 2%;
    z-index: 1001;
    box-sizing: border-box;
    transition: .3s;
}
.navibox {
	max-width: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
}
.navi figure {
	padding: 0;
}

.navi ul {
	display: flex;
	justify-content: center;
	width: auto !important;
	margin: 0 0 0 20px;
	align-items: center;
	padding: 4px 0 !important;
	position: relative;
	bottom: 0;
	right: 0;
	background: rgba(0,0,0,0.3);
}

.navi ul li {
    width: auto;
    color: #fff;
    padding: 0;
    position: relative;
    margin: 0;
    border: none !important;
}

.navi ul li img {
	vertical-align:middle;
}

.navi ul li a {
	font-size: 0.8em;
	text-align: center;
	font-weight: 600;
	padding: 0;
	padding: 8px 15px;
	border-radius: 0;
	transition: .3s;
}

.navi ul li.recruit-b a span {
    background: none;
    padding: 0 5px;
}

.navi ul li a:hover {
	background:#111;	
	transition: .3s;	
}

.navi ul li a.active {
	/* background:#2f4f3a; */
	background: #111;
}

.navi ul li a:after {
	display: none;
}

.navi ul li a span {
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 0 0 0 20px;
	justify-content: center;
	position: relative;
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
}
.navi ul li a:before {
	content:"";
	opacity:0;
	position: absolute;
	width: 100%;
	height: 2px;
	z-index: 0;
	left: 0;
	bottom: 3px;
	transition:.3s;
	right: 0;
	margin: auto;
}
.navi ul li a:hover:before {

}


.navi ul li:last-child:after {
	display:none;
}
.navi ul li:after {
	content:"";
}

.navi ul li:last-child a:after {
	display:none;
}

.navi ul li a:hover span,
.navi ul li a.active span {color: #fff;background: url("../images/common/target_w.png") no-repeat center left 2%;}
.navi ul li.recruit-b a:hover span{
	background:none;
} 
/*+++++++++++++
swiper
*++++++++++++*/
.swiper-pagination {
    text-align: right;
    left: inherit !important;
    margin: 15px 20px;
    width: auto !important;
    right: 0;
    bottom: 0 !important;
}
.swiper-pagination-bullet {
    border: 1px solid #fff;
    background: none;
    opacity: 1;
    width: 10px;
    height: 10px;
}
.swiper-pagination-bullet-active {
    background: #fff;
}

.vbox-close {
	background: url("../images/common/close.png") no-repeat;
	text-indent: -999px;
	width: 70px;
	height: 70px;
	margin: 2%;
	padding: 0;
	right: 1%;
}


/*pagenavi*/
.wp-pagenavi{
	clear:both;
	margin: 50px 0 0;
	text-align:center;
	padding: 0 0 10px;
	position: relative;
}

.wp-pagenavi span.pages {
    border: 1px solid #ccc;
    padding: 10px;
    margin: 0 5px 0 0;
}

.wp-pagenavi span.current {
      display: inline-block;
      color: #fff;
      background: #397ca9;
      padding: 10px 18px;
      box-sizing: border-box;
      text-align: center;
      font-size: 1em;
      margin: 0 8px 0 0;
      position: relative;
}

a.page.smaller, a.page.larger {
    display: inline-block;
    color: #222;
    padding: 10px 18px;
    text-align: center;
    margin: 0 8px 0 0;
    font-size: 1em;
}

a.page.smaller:hover,
a.page.larger:hover,
a.previouspostslink:hover,
a.nextpostslink:hover,
.wp-pagenavi a.previouspostslink:hover,
.wp-pagenavi a.nextpostslink:hover,
.wp-pagenavi a.first:hover,
.wp-pagenavi a.last:hover{
	text-decoration:none;
	background: #397ca9;
	color: #fff;
	box-shadow:none;
	transition: .3s;
	text-decoration:none;
}

a.page.smaller:hover:after,
a.page.larger:hover:after,
a.previouspostslink:hover:after,
a.nextpostslink:hover:after
 {
	margin:0;

}
.wp-pagenavi a.previouspostslink, .wp-pagenavi a.nextpostslink {
    display: inline-block;
    color: #231815;
    padding: 10px 20px;
    text-align: center;
    margin: 0 8px 0 0;
    font-size: 1em;
}

.wp-pagenavi .extend {
	display: inline-block;
	color: #222;
	padding: 10px 20px;
	text-align: center;
	margin: 0 8px 0 0;
	font-size: 1em;
	position: relative;
}

.wp-pagenavi a.first,.wp-pagenavi a.last {
	display: inline-block;
	color: #222;
	background: none;
	/* border: 1px solid #b89d1c; */
	padding: 10px 20px;
	text-align: center;
	margin: 0 8px 0 0;
	font-size: 1em;
}

/*+++++++++++++
bunner
*++++++++++++*/
#bunner {
	position: fixed;
	opacity:0;
	bottom: 3%;
	height: auto;
	transition: .3s;
	z-index: 2;
    margin: 100px auto 0;
    max-width: 300px;
    border: 1px solid #ccc;
    width: 100%;
    padding: 2px;
    border-left: none;	
}

#bunner.active {
	opacity: 1;
	transition: .3s;
}

#bunner .close{
	background: #fff;
	position: absolute;
	right: 0;
	z-index: 10;
	width: 30px;
	height: 30px;
	border-radius: 100%;
	text-align: center;
	border: 1px solid #5eacca;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: -5%;
	color: #5eacca;
	cursor: pointer;
	font-weight: bold;
	transition: .3s;
}

#bunner.active .close{ 
	transition: .3s;
}

#bunner.active {
	display: block;
}


#bunner a {
	display: block;
	width: 100% !important;
	background: none !important;
}

#bunner a img:last-child{
    width: 100%;
}



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


.box {
	position: relative;
}

/*+++++++++++++
flex
*++++++++++++*/
.block {
	display: block;
}

.wrap {
    flex-wrap: wrap;
}

.column3 > li {
    width: 48%;
}

/*+++++++++++++
inner
*++++++++++++*/
.inner {
    max-width: 90%;
}

.w980 {justify-content: center;}
.w80 {
	max-width: 80%;
	margin: auto;
}
.w90 {
	max-width: 90%;
	margin: auto;
}


/*+++++++++++++
装飾
*++++++++++++*/
hr {
	border-top: none;
	border-color: #ccc;
	padding: 10px 0 0;
	border-left: none;
	border-right: none;
	margin: 0 0 10px;
}
.plus {
    position: relative;
    max-width: 480px;
    margin: auto;
}
.plus:before{
    content:"＋";
    font-size: 20px;
    opacity: 0.5;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    display: flex;
    align-items: center;
}
.plus:after{
    content: "＋";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 20px;
    opacity: 0.5;
}

/*+++++++++++++
font
*++++++++++++*/

/*タイトル*/
.title-card {
    /* z-index: 1; */
    position: relative;
    margin: 0 auto 50px;
}

/*font size*/
.small {
    font-size: 1.1em;
}
.medium {
    font-size: 1.2em;
	}
.xlarge {font-size: 1.7em;}

h6 {
	
font-size: 1.3em;
}
/*+++++++++++++
margin
*++++++++++++*/

.mb3 {margin:0 0 80px;}
.mbx {margin:0 0 300px;}

/*+++++++++++++
button
*++++++++++++*/

.button span{
	display: block;
	background-size: 12px;
	transition: .3s;
	position: relative;
	padding: 0;
	width: 100%;
	color: #111;
}

.button span:before {
    content:"";
    background: url("../images/common/arrow.svg") no-repeat;
    width: 16px;
    height: 30px;
    transform: rotate(-90deg);
    background-position: center center;
    right: 3%;
    top: 0;
    position: absolute;
    transition:.3s;
    background-size: 5px;
}

.button:hover span:before {
    background: url("../images/common/arrow.svg") no-repeat;
	background-position: center center;
	transition: .3s;
    background-size: 5px;	
    right: 0;
    top: 0;		
}


.button::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #111;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}

.button:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/**/
.button.wh span {
	color: #fff;
}
.button.wh span:before {
	background: url("../images/common/arrow_w.svg") no-repeat;
	background-size: 5px;
	background-position: center;
}
.button.wh::after {
	background: #fff;
}
/**/


.button2 {
	width:auto;
	padding: 20px 50px;
	display: block;
	border-radius: 100px;
	text-align: center;
	background: rgba(255,255,255,0.2);
}
.button2 p{
}
.button2.date p {
}
/*+++++++++++++
2column
*++++++++++++*/
.column2 {
    flex-wrap: wrap;
    gap: 30px;
    align-items: flex-start;
}
.column2 > li {
    width: 46%;
}
/*+++++++++++++
3column
*++++++++++++*/
.column3 {
    flex-wrap: wrap;
    gap: 30px;
    align-items: flex-start;
}
.column3 > li {
    width: 31%;
}
/*+++++++++++++
header
*++++++++++++*/

/**/
.drawer-open header {
	z-index: 101;
}
header.is-animation{
	/* position:absolute; */
	/* z-index: 999; */
	transition: .3s;
	/* opacity: 0; */
}

/**/
.drwbox {
	width: 62%;
	padding: 100px 30px;
}

.drwbg {
    width: 480px;
    background-size: cover;
}

/*Pamphlet*/
.pamphlet {
	width: auto;
	padding: 30px 40px 40px;
}
.pamphlet .pambox.flex {
	gap: 20px;
}
.drwbottom {
	gap: 10px;
	justify-content: space-between;
}
	.drwbottom a em{
	font-size: 0.8em;
}

/*+++++++++++++
footer
*++++++++++++*/
#pagetop {
}

#pagetop:before {
}

footer > .flex {margin: 0 auto 80px;}

a.tel {
	font-size: 2em;
}

footer .fbottombox span {
	font-size: 0.8em;
	letter-spacing: 1px;
}


/*+++++++++++++
sns
*++++++++++++*/
.sns {
	justify-content: left;
	width: auto;
}

.sns a img {
	width: 20px;
	height: 20px;
}
/*++++++++++++++
navi 各サイト遷移
++++++++++++++*/

.navi ul li img {
	vertical-align:middle;
}

.navi ul li.recruit-b a span {
    background: none;
    padding: 0 5px;
}

.navi ul li a:after {
	display: none;
}

.navi ul li a span {
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 0 0 0 20px;
	justify-content: center;
	position: relative;
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
}
.navi ul li a:before {
	content:"";
	opacity:0;
	position: absolute;
	width: 100%;
	height: 2px;
	z-index: 0;
	left: 0;
	bottom: 3px;
	transition:.3s;
	right: 0;
	margin: auto;
}
.navi ul li a:hover:before {

}


.navi ul li:last-child a:after {
	display:none;
}

.navi ul li a:hover span,
.navi ul li a.active span {color: #fff;background: url("../images/common/target_w.png") no-repeat center left 2%;}
.navi ul li.recruit-b a:hover span{
	background:none;
} 

/*+++++++++++++
bunner
*++++++++++++*/
#bunner {
	width: 300px;
}
}
@media screen and (max-width: 1299px) {
/*+++++++++++++
main
*++++++++++++*/
#main {
}
#main figure {
	height: 300px;
}

/*+++++++++++++
flex
*++++++++++++*/

.flex {gap: 25px;}
.wrap {
    flex-wrap: wrap;
}

/*+++++++++++++
inner
*++++++++++++*/
.inner {max-width: 95%;}

.w80 {
	max-width: 80%;
	margin: auto;
}
.w90 {
	max-width: 95%;
}

/*+++++++++++++
装飾
*++++++++++++*/
hr {
	border-top: none;
	border-color: #ccc;
	padding: 10px 0 0;
	border-left: none;
	border-right: none;
	margin: 0 0 10px;
}
.plus {
    position: relative;
    max-width: 480px;
    margin: auto;
}
.plus:before{
    content:"＋";
    font-size: 20px;
    opacity: 0.5;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    display: flex;
    align-items: center;
}
.plus:after{
    content: "＋";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 20px;
    opacity: 0.5;
}

/*+++++++++++++
font
*++++++++++++*/

/*タイトル*/
.title-card {
    /* z-index: 1; */
    position: relative;
    margin: 0 auto 50px;
}

/*text*/
p {
    letter-spacing: 0;
}

span {
    font-size: 0.8em;
}

/*font size*/
.small {
    font-size: 1.1em;
}

.large {
    font-size: 1.3em;
}
.xlarge {font-size: 1.4em;line-height: 1.4;}

h6 {
	
font-size: 1.2em;
}

/*+++++++++++++
margin
*++++++++++++*/
.mb1 {}
.mb3 {
}
.mbx {margin:0 0 300px;}

/*+++++++++++++
button
*++++++++++++*/

.button span{
}

.button span:before {
    content:"";
    background: url("../images/common/arrow.svg") no-repeat;
    width: 16px;
    height: 30px;
    transform: rotate(-90deg);
    background-position: center center;
    right: 3%;
    top: 0;
    position: absolute;
    transition:.3s;
    background-size: 5px;
}

.button:hover span:before {
    background: url("../images/common/arrow.svg") no-repeat;
	background-position: center center;
	transition: .3s;
    background-size: 5px;	
    right: 0;
    top: 0;		
}


.button::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #111;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}

.button:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/**/
.button.wh span {
	color: #fff;
}
.button.wh span:before {
	background: url("../images/common/arrow_w.svg") no-repeat;
	background-size: 5px;
	background-position: center;
}
.button.wh::after {
	background: #fff;
}
/**/
.button2 {
	width: 80%;
}
.button2 p{
	font-size: 1em;
}


/*+++++++++++++
header
*++++++++++++*/

header a.logo {
    width: 250px;
}

/**/
.drawer-open header {
	z-index: 101;
}

.drawer-hamburger {margin: 30px 50px;}
/**/
.drwbox {
    width: 65%;
}

.drwbg {
	width: 400px;
	background-size: cover;
}

/*Pamphlet*/
.pamphlet {
	width: auto;
	padding: 30px;
}
.pamphlet .pambox.flex {
}
.pamphlet a {
	width: 47%;
}

/*+++++++++++++
footer
*++++++++++++*/

footer {padding: 80px 0 0;}

footer > .flex {margin: auto;display: block;max-width: 640px;}

footer .fbox {
	width: 100%;
}
footer a.flogo {
	display: block;
	width: 380px;
	margin: 0 0 22px;
}

a.tel {font-size: 1.6em;}
footer .f_innerbox a.tel em{
	font-size: 0.6em;
}

ol.drw {
	width: 100%;
	margin: 0 auto 30px;
}

footer .fbottombox span {
	font-size: 0.8em;
	letter-spacing: 1px;
}

/*+++++++++++++
sns
*++++++++++++*/

.sns a img {
	width: 20px;
	height: 20px;
}
/*++++++++++++++
navi 各サイト遷移
++++++++++++++*/

.navi figure {
	padding: 0;
}


.navi ul li img {
	vertical-align:middle;
}

.navi ul li.recruit-b a span {
    background: none;
    padding: 0 5px;
}

.navi ul li a:after {
	display: none;
}

.navi ul li a span {
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 0 0 0 20px;
	justify-content: center;
	position: relative;
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
}
.navi ul li a:before {
	content:"";
	opacity:0;
	position: absolute;
	width: 100%;
	height: 2px;
	z-index: 0;
	left: 0;
	bottom: 3px;
	transition:.3s;
	right: 0;
	margin: auto;
}

.navi ul li:last-child:after {
	display:none;
}
.navi ul li:after {
	content:"";
}

.navi ul li:last-child a:after {
	display:none;
}

.navi ul li a:hover span,
.navi ul li a.active span {
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
	}
.navi ul li.recruit-b a:hover span{
	background:none;
} 
}
@media screen and (max-width: 1023px) {
/*+++++++++++++
main
*++++++++++++*/
#main {padding: 130px 0 0;}
#main h3 {
    margin: 0 0 30px;
    display: block;
}
#main h3 span {
	display:block;
	margin: 0;
}	
#main figure img {
    left: 0;
    right: 0;
    position: relative;
}

.videobox {
	position: relative;
	width: 100%;
	height: 100vh;
}
	
video {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: auto;
    height: auto;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%,-50%);
}


.box {
	position: relative;
}

/*+++++++++++++
flex
*++++++++++++*/
.block {
	display: block;
}
.flex {
    gap: 15px;
}


/*+++++++++++++
inner
*++++++++++++*/
	
.w80 {
	max-width: 80%;
	margin: auto;
}
.w90 {
	max-width: 90%;
	margin: auto;
}

/*+++++++++++++
color
*++++++++++++*/
.wh {}
.gr { color: #ccc; }
/*+++++++++++++
装飾
*++++++++++++*/
hr {
	border-top: none;
	border-color: #ccc;
	padding: 10px 0 0;
	border-left: none;
	border-right: none;
	margin: 0 0 10px;
}
.plus {
    position: relative;
    max-width: 480px;
    margin: auto;
}
.plus:before{
    content:"＋";
    font-size: 20px;
    opacity: 0.5;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    display: flex;
    align-items: center;
}
.plus:after{
    content: "＋";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 20px;
    opacity: 0.5;
}

/*+++++++++++++
font
*++++++++++++*/
h3 b {
	font-size: 3em;
	letter-spacing: 0;
}
/*タイトル*/
.title-card {
    /* z-index: 1; */
    position: relative;
    margin: 0 auto 50px;
}

/*text*/
p {font-size: 0.9em;line-height: 2;letter-spacing: 1px;}


em {
	font-style: normal;
	font-size: 0.8em;
}

/*font size*/
.small {
    font-size: 1.1em;
}
.medium {
    font-size: 1.2em;
}

/*bold*/
.bold {
	font-weight:bold;
}


/*english*/
.entitle:before {
    width: 30px;
    top: -10px;
}

/*+++++++++++++
margin
*++++++++++++*/
.mb {margin: 0 0 5px;}
.mb1 {
    margin: 0 0 20px;
}
.mb3 {
}
.mbx {margin:0 0 300px;}

/*+++++++++++++
button
*++++++++++++*/


.button span:before {
    content:"";
    background: url("../images/common/arrow.svg") no-repeat;
    width: 16px;
    height: 30px;
    transform: rotate(-90deg);
    background-position: center center;
    right: 3%;
    top: 0;
    position: absolute;
    transition:.3s;
    background-size: 5px;
}

.button:hover span:before {
    background: url("../images/common/arrow.svg") no-repeat;
	background-position: center center;
	transition: .3s;
    background-size: 5px;	
    right: 0;
    top: 0;		
}


.button::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #111;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}

.button:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/**/
.button.wh span {
	color: #fff;
}
.button.wh span:before {
	background: url("../images/common/arrow_w.svg") no-repeat;
	background-size: 5px;
	background-position: center;
}
.button.wh::after {
	background: #fff;
}
/**/


.button2 {margin: 0 auto 20px;}
.button2 p{
	font-weight: bold;
	font-size: 1.1em;
	letter-spacing: 1px;	
}

/*+++++++++++++
header
*++++++++++++*/

header a.logo {width: 200px;}

/**/
.drawer-open header {
	z-index: 101;
}
header.is-animation{
	/* position:absolute; */
	/* z-index: 999; */
	transition: .3s;
	/* opacity: 0; */
}
header.is-animation .drawer-hamburger-icon:before,
header.is-animation .drawer-hamburger-icon:after {
	background: #000;
}
/**/
.drwbox {
	width: auto;
	position: relative;
	margin: auto;
	padding: 50px;
	overflow: hidden;
	height: auto;
}

.drawer-nav{
	overflow-y: scroll;
}	
.drwbg {
    width: 100%;
    height: 200px;
    background-position: center;
    float: none;
}


/*+++++++++++++
footer
*++++++++++++*/
#pagetop {width: 55px;height: 55px;margin: 30px;}


footer a.flogo {
	display: block;
	width: 380px;
	margin: 0 0 22px;
}

footer .f_innerbox {width: auto;}

footer .f_innerbox:before {
	content:"";
	position: absolute;
	width: 98%;
	height: 1px;
	border-top: 1px dotted #fff;
	top: 5px;
	left: 0;
	right: 0;
	margin: auto;
}

a.tel {
	font-size: 2em;
}
footer .f_innerbox a.tel em{
	margin: 0 5px -3px 0;
	font-size: 0.7em;
}

ol.drw {
	/* width: auto; */
	justify-content: space-between;
}

footer .fbottombox .flex {
	flex-wrap: wrap;
	justify-content: center;
}

footer .fbottombox a  {width: 30%;text-align: center;}
footer .fbottombox span {
	font-size: 0.8em;
	letter-spacing: 1px;
}


/*+++++++++++++
sns
*++++++++++++*/
.sns {
	justify-content: left;
	width: auto;
}

.sns a img {
	width: 20px;
	height: 20px;
}
/*++++++++++++++
navi 各サイト遷移
++++++++++++++*/

.navibox {
	max-width: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
}
.navi figure {
	padding: 0 10px;
	display: flex;
}
.navi ul li img {
	vertical-align:middle;
}


.navi ul li.recruit-b a span {
    background: none;
    padding: 0 5px;
}

.navi ul li a:after {
	display: none;
}

.navi ul li a span {
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 0 0 0 20px;
	justify-content: center;
	position: relative;
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
}
.navi ul li a:before {
	content:"";
	opacity:0;
	position: absolute;
	width: 100%;
	height: 2px;
	z-index: 0;
	left: 0;
	bottom: 3px;
	transition:.3s;
	right: 0;
	margin: auto;
}

.navi ul li:last-child:after {
	display:none;
}
.navi ul li:last-child a:after {
	display:none;
}

.navi ul li a:hover span,
.navi ul li a.active span {
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
}
.navi ul li.recruit-b a:hover span{
	background:none;
} 


}
@media screen and (max-width: 767px) {
/*+++++++++++++
main
*++++++++++++*/
#main {
}
#main figure {
	height: 300px;
	width: auto;
}
.box {
	position: relative;
}

.br {display: none !important; }
.br2 {display: block !important;}	
.pc {display: none !important; }
.sp {display: block !important;}
/*+++++++++++++
flex
*++++++++++++*/
.block {
	display: block;
	font-size:0.8em;
}

.wrap {
    flex-wrap: wrap;
}

.column3 > li {
    width: 48%;
}

/*+++++++++++++
inner
*++++++++++++*/

.container:before {
    content:"";
}

.w80 {
	max-width: 80%;
	margin: auto;
}
.w90 {
	max-width: 95%;
	margin: auto;
}
/*+++++++++++++
section
*++++++++++++*/
section {
	padding:50px 0;
}
/*+++++++++++++
装飾
*++++++++++++*/
hr {
	border-top: none;
	border-color: #ccc;
	padding: 10px 0 0;
	border-left: none;
	border-right: none;
	margin: 0 0 10px;
}
.plus {
    position: relative;
    max-width: 480px;
    margin: auto;
}
.plus:before{
    content:"＋";
    font-size: 20px;
    opacity: 0.5;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    display: flex;
    align-items: center;
}
.plus:after{
    content: "＋";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 0;
    display: flex;
    align-items: center;
    font-size: 20px;
    opacity: 0.5;
}

/*+++++++++++++
font
*++++++++++++*/
h3 {
	display: block;
}
h3.mini b {
	font-size: 1.6em;
	margin: 0;
	text-align: left;
}	
h3.mini span {
	margin:0;
	display:block;
}	
/*タイトル*/
.title-card {
    /* z-index: 1; */
    position: relative;
    margin: 0 auto 50px;
}

/*text*/
p {font-size: 0.8em;}

em {
	font-style: normal;
	font-size: 0.8em;
}

/*font size*/
.small {
    font-size: 1.1em;
}
.medium {
    font-size: 1.1em;
}
.large {
    font-size: 1.1em;
    line-height: 1.4;
}
.xlarge {font-size: 1.1em;line-height: 1.8;}

p.xlarge.mb3.center.wh {}

/*bold*/
.bold {
	font-weight:bold;
}

/*letter space*/
.letter {
    letter-spacing: 1px;
    line-height: 2;
}


/*+++++++++++++
margin
*++++++++++++*/
.mb {margin: 0 0 8px;}
.inblock {
    font-size: 0.8em;
}
.mb2 {
    margin: 0 0 30px;
}
.mb3 {margin: 0 0 40px;}
.mbx {margin:0 0 300px;}

/*+++++++++++++
button
*++++++++++++*/
.button {
	max-width: 300px;
	padding: 0 0 5px;
}

.button span{font-size: 0.9em;}

.button span:before {
    content:"";
    background: url("../images/common/arrow.svg") no-repeat;
    width: 16px;
    height: 30px;
    transform: rotate(-90deg);
    background-position: center center;
    right: 3%;
    top: 0;
    position: absolute;
    transition:.3s;
    background-size: 5px;
}

.button:hover span:before {
    background: url("../images/common/arrow.svg") no-repeat;
	background-position: center center;
	transition: .3s;
    background-size: 5px;	
    right: 0;
    top: 0;		
}


.button::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #111;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
}

.button:hover::after {
  transform-origin: left top;
  transform: scale(1, 1);
}

/**/
.button.wh span {
	color: #fff;
}
.button.wh span:before {
	background: url("../images/common/arrow_w.svg") no-repeat;
	background-size: 5px;
	background-position: center;
}
.button.wh::after {
	background: #fff;
}
/**/


.button2 {
	width: 100%;
	box-sizing: border-box;
	padding: 15px 20px 15px 40px;
}
.button2 p{
	font-weight: bold;
	font-size: 1.1em;
	letter-spacing: 1px;	
}
.button2.date p {
	max-width: 100%;
	font-size: 1em;
}


/*+++++++++++++
header
*++++++++++++*/
.drawer-hamburger {
	margin: 20px 40px;
	width: 40px;
	height: 40px;
}	
.drawer-hamburger-icon:before {
	
top: -8px;
}	
.drawer-hamburger-icon:after {
	
top: 8px;
}	
header {padding: 20px;}

header a.logo {width: 180px;}

/**/
.drawer-open header {
	z-index: 101;
}
header.is-animation{
	/* position:absolute; */
	/* z-index: 999; */
	transition: .3s;
	/* opacity: 0; */
}
header.is-animation .drawer-hamburger-icon:before,
header.is-animation .drawer-hamburger-icon:after {
	background: #000;
}
/**/
.drwbox {
	width: auto;
	padding: 50px 10px;
	overflow-y: hidden;
}

/*Pamphlet*/
.pamphlet {
	padding: 30px 20px 40px;
	margin: 30px 0;
	width: 100%;
	box-sizing: border-box;
}
.pamphlet > .flex {
	display: block;
}	


.pamphlet .pambox.flex {
}
.pamphlet a {
	width: auto;
	margin: 0 0 20px;
	display: block;
}
.drwbottom {
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
}
.drwbottom a {
	margin: 0 10px 0 0;
}
/*+++++++++++++
footer
*++++++++++++*/
#pagetop {width: 40px;height: 40px;bottom: 8%;}

#pagetop:before {
	height: 18px;
}

footer {padding: 50px 0 100px;}

footer > .flex {
	max-width: 95%;
	margin: 0 auto 30px;
}

footer .fbox {
	width: 100%;
}
footer a.flogo {
	width: 250px;
}

footer .f_innerbox {
	width: 100%;
}
footer .f_innerbox > .flex {
	
display: block;
}

footer .f_innerbox:before {
	content:"";
	position: absolute;
	width: 98%;
	height: 1px;
	border-top: 1px dotted #fff;
	top: 5px;
	left: 0;
	right: 0;
	margin: auto;
}

a.tel {
}
footer .f_innerbox a.tel em{
	margin: 0 5px -3px 0;
	font-size: 0.7em;
}

ol.drw {
	width: auto;
	align-items: flex-start;
	/* display: block; */
}

ol.drw li a span{
	font-size: 0.75em;
}
ol.drw li a {
	align-items: center;
}
ol.drw li a p {
	line-height: 1.3;
	font-size: 1.2em;
	letter-spacing: 0;
}

footer .fbottombox  {
	border-top: 1px solid rgba(255,255,255,0.2);
	padding: 40px 20px 20px;
	box-sizing: border-box;
}

footer .fbottombox > .flex {
	flex-wrap: wrap;
	gap: 8px;
}
footer .fbottombox > .flex a {
	margin: 0 10px 0 0;
	width: auto;
}
footer .fbottombox span {
	font-size: 0.8em;
	letter-spacing: 1px;
}

.copyright {
	height: auto;
	width: auto;
	position: relative;
	bottom: 0;
	margin: auto;
	padding: 20px;
	writing-mode: inherit;
	text-align: center;
	display: block;
}

/*+++++++++++++
sns
*++++++++++++*/
.sns {
	justify-content: left;
	width: auto;
}
.sns a {
	
}
.sns a img {
	width: 20px;
	height: 20px;
}
/*++++++++++++++
navi 各サイト遷移
++++++++++++++*/
.navi {
    position: relative;
    right: 0;
}
.navibox {gap: 0;height: auto;justify-content: space-between;}
.navi figure {display: none;}
	.navi figure img {
	width: 110px;
}

.navi ul {margin: 0;padding: 3px 0 !important;box-sizing: border-box;flex-wrap: wrap;width: 100% !important;justify-content: space-around;}

.navi ul li {}

.navi ul li img {
	vertical-align:middle;
}

.navi ul li a {padding: 7px 4px;}

.navi ul li.recruit-b a span {
    background: none;
    padding: 0 5px;
}

.navi ul li a:after {
	display: none;
}

.navi ul li a span {
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 0 0 0 20px;
	justify-content: center;
	position: relative;
	color: #fff;
	background: url("../images/common/target_w.png") no-repeat center left 2%;
}
.navi ul li a:before {
	content:"";
	opacity:0;
	position: absolute;
	width: 100%;
	height: 2px;
	z-index: 0;
	left: 0;
	bottom: 3px;
	transition:.3s;
	right: 0;
	margin: auto;
}
.navi ul li a:hover:before {

}


.navi ul li:last-child:after {
	display:none;
}
.navi ul li:after {
	content:"";
}

.navi ul li:last-child a:after {
	display:none;
}

.navi ul li a:hover span,
.navi ul li a.active span {color: #fff;background: url("../images/common/target_w.png") no-repeat center left 2%;}
.navi ul li.recruit-b a:hover span{
	background:none;
} 
	
/*+++++++++++++
aside
++++++++++++++*/
aside {
    /* border-top: 1px solid #bb9957; */
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 9999;
    background: #f7f7f7;
    box-shadow: -5px 5px 10px rgba(0,0,0,0.5);
}
aside .asidebox {
    display: flex;
    flex-wrap: wrap;
}
aside a {
    /* border-right: 1px solid #bb9957; */
    box-sizing: border-box;
    width: 33%;
    padding: 8px 22px;
    display:block;
    /* background: #fff; */
    position: relative;
}
	
aside a span {
	font-size: 0.7em;
	color: #111;
	text-align: center;
	display: block;
	line-height: 1.2;
}
	
aside a span img {
	width: 20px;
	margin: 0 auto 7px;
	display: block;
	text-align: center;
}


aside a:last-child {
	border:none;
	/* width: 20%; */
	/* background: #9a7630; */
}

aside.sp a:last-child img {
	width: 20px;
	/* position: absolute; */
	left: 0;
	right: 0;
	/* margin: auto; */
	top: 0;
	bottom: 0;
	padding: 0;
}
	
.modal {
	opacity: 1;
	display: none;
	height: 100%;
	background: rgba(0,0,0,0.7);
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 999;
}

.js-close {
	width: 70px;
	height: 70px;
	position: absolute;
	bottom: 0;
	right: 5%;
	margin: auto;
	top: -50%;
}
	
.modal .modalbox {
    background: #fff;
    border-radius: 10px;
    width: 90%;
    position: absolute;
    height: 320px;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    text-align: center;
    padding: 30px;
    box-sizing:border-box;
}	
.modal .modalbox .button2 p {
	font-size: 0.8em;
	background: url("../images/common/date.svg") no-repeat left center;
	background-size: 15px;
}	
.modal .modalbox a.tel {
	display:block;
	margin: 0 auto 10px;
}
/*+++++++++++++
bunner
*++++++++++++*/
#bunner {
	width: 200px;
	bottom: 10%;
	margin: 0;
}	
}

@media screen and (min-width: 768px) {
	.drwbox ol.drw {
		grid-template-columns: repeat(3, 1fr);
	}
}