﻿@charset "UTF-8";



/*---------------------------------------

[reset]

[base]
	font
	anchor
	add class

[common set-up]
	h
	pagetop link

[lower common]

[each page]

[common contents]
	container
	header
	main contents
	footer
	print

[clearfix]

[cms setting]

---------------------------------------*/

/* CSS Document */
/*===============================================
●style.css
===============================================*/
* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	word-wrap: break-word;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote {
	margin: 0;
	padding: 0;
}

header,nav,section,aside,footer {
	display: block;
}

table {
	border-spacing: 0;
}

fieldset,img,a img,abbr,acronym {
	border: 0;
}

li img,dt img {
	vertical-align: top;
}

address,caption,cite,code,dfn,th,var {
	font-style: normal;
	font-weight: normal;
}

caption,th {
	text-align: left;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: normal;
}

q:before,q:after {
	content: '';
}
a {
	outline: none;
}

 li {
	 list-style:none;
 }

button, fieldset, form, input, label, legend, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}

@media (min-width: 751px) {
a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
}
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: base */

:root {
  --main-color: #d8e3e6;
  --main-color02: #799da9;
  --main-color03: #436671;
  --main-color04: #cf781c;
}
/*
var(--main-color);
*/

/*--------------------------------------- font */
html {
	font-size: 62.5%;
/* 1em=10px化 */
}

body {
	font-family:Arial, Helvetica, sans-serif;
	line-height: 1.5;
	color: #171717;
	-webkit-text-size-adjust: 100%;
	font-size: 1.4em;
/* 基準フォントサイズ1.4em=14px */
}



/*----------------------- color */
/* red */
.red {
	color: #FF0000;
}

/* white */
.topicsList span.category,
.topicsList span.new {
	color: #FFFFFF;
}

/* gray */
.topicsList .date {
	color:#5a5a5a;
}

/* black */
.black {
	color: #0b0b0b;
}

/*----------------------- size */
/* size10px */
.topicsList .date {
	font-size: 0.71em;
}

/* size12px */
#terms .accbox .accshow h3 span,
.copy {
	font-size: 0.85em;
}
 									@media screen and (max-width:498px){
										#terms .accbox .accshow h3 span,
										.copy {
											font-size: 0.75em;
										}
									}

/* size13px */
.small {
	font-size: 0.94em;
}

/* size14px */
.size14 {
	font-size: 1.0em;
}

/* size16px */
#pagetop .colorWhite.zigzag02 .fadein form .checkbox,
#wrapper nav ul li,
article,
.topics .title{
	font-size: 1.14em;
}
 									@media screen and (max-width:498px){
										#pagetop .colorWhite.zigzag02 .fadein form .checkbox,
										#wrapper nav ul li,
										article,
										.topics .title{
											font-size: 0.9em;
										}
									}

/* size18px */
.common .key,
.navigation2 li a {
	font-size: 1.28em;
}

/* size20px */
.large {
	font-size: 1.42em;
}

/* size22px */
 {
	font-size: 1.57em;
}

/* size24px */
footer  dt {
	font-size: 1.77em;
}
 									@media screen and (max-width:498px){
										footer  dt {
											font-size: 1.57em;
										}
									}


/* size46px */
.lower h1,
.common h2 {
	font-size: 3.31em;
}

/*--------------------------------------- font-family */
/* Quicksand */
h2{
font-family: 'Roboto Slab';
}



/*--------------------------------------- anchor */

a:link,
a:visited {
	color: var(--main-color02);
	text-decoration:underline;
}

a:active,
a:hover {
	color: #4aa670;
	text-decoration: underline;
}

/* black */
.topicsList li a:link,
.topicsList li a:visited,
.fixedNav li a,
.fixedNav li a:link,
.fixedNav li a:visited,
.fixedNav li a:active,
.fixedNav li a:hover {
	color: #171717;
	text-decoration: none;
}
.topicsList li a:hover,
.topicsList li a:active,
.topicsList li a:hover {
	color: #5a8300;
	text-decoration: none;
}

/* white */
.btn a:link,
.btn a:visited {
	color:#FFF;
}

.navigation2 li a,
.navigation2 li a:link,
.navigation2 li a:visited,
.navigation2 li a:active,
footer li a,
footer li a:link,
footer li a:visited,
footer li a:active{
	color: var(--main-color02);
	text-decoration: none;
}

/*--------------------------------------- add class */

.floatL {
	float: left;
}

.floatR {
	float: right;
}

.clearB {
	clear: both;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.bold {
	font-weight: bold;
}

.pc
.forPc {
	display: inline;
}

.sp,
.forSp {
	display: none;
}

.pt80 {
	padding-top: 80px;
}
					@media screen and (max-width:498px){
							.pt80 {
									padding-top: 40px;
							}
						}

.mb1em {
	margin-bottom: 1em;
}
.mb5 {
	margin-bottom: 5px;
}
.mb80 {
	margin-bottom: 80px;
}

.pb60{padding-bottom: 60px;}

.hidden {
	display:none;
}

.mt20{
	margin-top:20px;
}

/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: common set-up */
.lower h1 {
	clear: both;
	padding: 140px 0 40px;
	color: var(--main-color02);
	text-align:center;
	font-weight:normal;
	letter-spacing:0.05em;
	width:100%;
	font-size: 2.7em;
	font-weight:600;
    text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF, -2px 2px 0 #FFF, 2px -2px 0 #FFF, 0px 2px 0 #FFF, -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;
}
 									@media screen and (max-width:1150px){
										.lower h1 {
											margin-top:40px;
										}
									}
 									@media screen and (max-width:498px){
										.lower h1 {
											margin-top:0;
                      padding:100px 0 10px;
										}
									}

.lower h1 {
	margin-bottom:30px;
}
.lower h1 span {
	display:block;
	font-size:0.5em;
	color:#000;
}

.default h2 {
	width:100%;
	font-size: 1.8em;
	color:#323239;
	position:relative;
	font-family: "游ゴシック", YuGothic,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
									@media screen and (max-width:478px){
										.default h2 {
											font-size: 1.3em;
										}
									}

.default h2 span {
	width: 71%;
    position: relative;
    line-height: 1.4;
    padding: 2.6em 2em 2em 0;
    display: inline-block;
    text-align: left;
}
 									@media screen and (max-width:798px){
										.default h2 span {
											width:100%;
										}
									}

						@media screen and (max-width:498px){
							.default h2 span {
									padding: 1em 1em 1em 0;
							}
						}
    
	
	
.default h2 span:before,
.default h2 span:after { 
  content:'';
  width: 120px;
  height: 50px;
  position: absolute;
  display: inline-block;
}
						@media screen and (max-width:498px){
							.default h2 span:before,default h2 span:after { 
									width: 90px;
							}
						}


.normal h2 {
	color: var(--main-color02);
	margin-bottom:20px;
	line-height:1.5;
	font-size: 1.8em;
}
									@media screen and (max-width:478px){
										.normal h2 {
											font-size: 1.4em;
										}
									}

h3 {
	clear: both;
	margin: 0 0 30px;
	font-size: 1.9em;
	font-weight:bold;
	text-align:center;
}
h3 span {
	display:block;
	font-size: 0.5em;
}
h3.star span,
h3.star02 span {
	background:url(../img/illust06.png) top center no-repeat;
	padding-top:80px;
	background-size: 80px auto;
	border-bottom:dotted 2px #000;
	display:inline-block;
	font-size:1em;
	text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF, -2px 2px 0 #FFF, 2px -2px 0 #FFF, 0px 2px 0 #FFF, -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;
}
h3.star02 span {
	background:url(../img/illust07.png) top center no-repeat;
	background-size: 40px auto;
}

h4 {
	clear: both;
	margin: 0 0 35px;
	padding:30px 0;
	font-size: 1.4em;
	font-weight: bold;
	background-image: -webkit-linear-gradient(left, #2F2E2E 2px, transparent 2px, transparent 100%);
    background-image: -o-linear-gradient(left, #2F2E2E 2px, transparent 2px, transparent 100%);
    background-image: linear-gradient(to right, #2F2E2E 2px, transparent 2px, transparent 100%);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: 10px 1px;
}
h4 span {
  display:inline-block;
  color:#cd5375;
}
h5 {
	clear: both;
	margin: 0 0 20px;
	font-size: 1.2em;
	font-weight: bold;
	color: #666;;
	border-left: 4px solid #7fac1f;
	padding-left:15px;
}

h6 {
	clear: both;
	margin: 0 0 10px;
	padding: 4px 10px 4px 11px;
	font-size: 1.1em;
	font-weight: bold;
	color: #7fac1f;
}

@media screen and (max-width: 779px) {
	.lower h1,
	h2 {
		font-size: 2em;
	}
	h3 {
		font-size: 1.1em;
	}
	h4 {
		font-size: 1.1em;
	}
	h5,h6 {
		font-size: 1em;
	}
}

/* img */
.imgResponse {
    width:100%;
}
 									@media screen and (max-width:498px){
										.imgResponse.w80 {
											width:80%;
                      margin-right:auto;
                      margin-left:auto;
										}
									}

/* btn */
.btn {
	clear: both;
}
.btn a {
	display: inline-block;
	padding: 1em 2em;
	background: -webkit-linear-gradient(#8eafba , #adc9d2);
    background: linear-gradient(#8eafba , #adc9d2);
    border: 1px solid #8eafba;
	border-radius: 4px;
	color: #fff;
	text-decoration: none;
	text-align: center;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	font-weight:900;
}
.btn a:hover {
	-webkit-animation: bounce 2s ease-in-out;
	animation: bounce 2s ease-in-out;
}
@-webkit-keyframes bounce {
	5%  { -webkit-transform: scale(1.1, .8); }
	10% { -webkit-transform: scale(.8, 1.1) translateY(-5px); }
	15% { -webkit-transform: scale(1, 1); }
}
@keyframes bounce {
	5%  { transform: scale(1.1, .8); }
	10% { transform: scale(.8, 1.1) translateY(-5px); }
	15% { transform: scale(1, 1); }
}


/* btn02 */
.btn02 {
	clear:both;
	margin:30px 0;
}
.btn02 a{
	position: relative;
	display: inline-block;
	padding: .9em 4em;
	background-color: #FFF;
	text-align: center;
	text-decoration: none;
	border-radius:50px;
	color:#069240;
	border:solid 1px #069240;
}
.btn02 a::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	border-left-color: #069240;
	transition: all .2s;
}
.btn02 a:hover::after {
	right: -.05em;
}
.btn02 a:hover {
	background-color: #e7f0ea;
}

/* btn_arrow */
.btn_arrow_shape a::after {
	border:none;
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 17px;
    width: 5px;
    height: 5px;
    margin: auto;
    border-top: 2px solid;
    border-right: 2px solid;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}



/* table */
table{
  width: 100%;
  border-collapse: collapse;
}

table tr{
  border-bottom: solid 2px white;
}

table tr:last-child{
  border-bottom: none;
}

table th{
  position: relative;
  text-align: left;
  width: 30%;
  background-color: var(--main-color);
  color: var(--main-color03);
  text-align: center;
  padding: 10px 0;
}

table th:after{
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  position: absolute;
  top:calc(50% - 10px);
  right:-10px;
  border-left: 10px solid var(--main-color);
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

table td{
  text-align: left;
  width: 70%;
  background-color: #f5f6f5;
  padding: 20px 10px 20px 30px;
}

table[border="0"],
table[border="0"] th,
table[border="0"] td {
	border: none;
}
table[border="1"],
table[border="1"] th,
table[border="1"] td {
	border: 1px solid #CCCCCC;
}
@media screen and (max-width:479px) {
	table th {
		width: auto !important;
	}
	table.responsive tr{
		display: block;
	}
	table.responsive th,
	table.responsive td{
		text-align:left;
		width:100% ;
		display: list-item;
		list-style:none;
		padding: 10px;
	}
	table.responsive tr table{
		display: table;
	}
	table.responsive th table th,
	table.responsive td table td{
		width:auto !important;
		display: table-cell;
	}
	table.noresponsive tr{
		display: table-row;
	}
	table.noresponsive th,
	table.noresponsive td{
		text-align:left;
		width:100% !important;
		display: table-cell;
		list-style:none;
	}
	table.noresponsive tr table{
		display: table;
	}
	table.noresponsive th table th,
	table.noresponsive td table td{
		width:auto !important;
		display: table-cell;
	}
	table th:after {
		display:none;
	}
}

/* mkr */
.txt_mkr_lime {
    background-image: -webkit-gradient(linear,left top,left bottom,from(rgba(229,245,120,0)),color-stop(.5,rgba(229,245,120,0)),color-stop(.6,#e5f578),color-stop(.98,#e5f578),to(rgba(229,245,120,0)));
    background-image: -webkit-linear-gradient(top,rgba(229,245,120,0),rgba(229,245,120,0) 63%,rgba(255,255,255,.6) 64%,rgba(255,255,255,.6) 67%,rgba(229,245,120,0) 68%),-webkit-linear-gradient(top,rgba(229,245,120,0),rgba(229,245,120,0) 55%,rgba(255,255,255,.5) 56%,rgba(255,255,255,.5) 60%,rgba(229,245,120,0) 61%),-webkit-linear-gradient(271deg,rgba(229,245,120,0),rgba(229,245,120,0) 50%,#e5f578 60%,#e5f578 99%,rgba(229,245,120,0)),-webkit-linear-gradient(top,rgba(229,245,120,0),rgba(229,245,120,0) 50%,#e5f578 60%,#e5f578 99%,rgba(229,245,120,0));
    background-image: linear-gradient(to bottom,rgba(229,245,120,0),rgba(229,245,120,0) 63%,rgba(255,255,255,.6) 64%,rgba(255,255,255,.6) 67%,rgba(229,245,120,0) 68%),linear-gradient(to bottom,rgba(229,245,120,0),rgba(229,245,120,0) 55%,rgba(255,255,255,.5) 56%,rgba(255,255,255,.5) 60%,rgba(229,245,120,0) 61%),linear-gradient(179deg,rgba(229,245,120,0),rgba(229,245,120,0) 50%,#e5f578 60%,#e5f578 99%,rgba(229,245,120,0)),linear-gradient(to bottom,rgba(229,245,120,0),rgba(229,245,120,0) 50%,#e5f578 60%,#e5f578 99%,rgba(229,245,120,0));
}

/* zigzag */
.zigzag {
  position: relative;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.04));
}
.zigzag::after {
  height: 20px;
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -20px;
  background: linear-gradient(135deg, #fff 10px, transparent 0), linear-gradient(225deg, #fff 10px, transparent 0);
  background-size: 20px 20px;
}

/* zigzag02 */
.zigzag02 {
  position: relative;
  filter: drop-shadow(2px 0 4px rgba(0, 0, 0, 0.04));
}
.zigzag02::before {
  height: 20px;
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  top: -20px;
  background: linear-gradient(45deg, #FFF 10px, transparent 0), linear-gradient(315deg, #FFF 10px, transparent 0);
  background-size: 20px 20px;
}
/* flag */
.flag {
	background-image:url("../img/illust04.png"), url("../img/illust05.png") ;
	background-repeat:no-repeat, no-repeat;
	background-position:top left, top right;
	background-size: 25% auto , 25% auto;
}
 									@media screen and (max-width:498px){
										.flag {
											background-size: 35% auto , 35% auto;
										}
									}
									
/* colorframe */
.colorframe {
	clear: both;
    -webkit-box-shadow: 2px 3px 5px -3px rgba(0, 0, 0, 0.3);
    box-shadow: 2px 3px 5px -3px rgba(0, 0, 0, 0.3);
	padding:30px;
	border-radius: 10px;
}
.colorframe.white { background-color: #FFF;}
.colorframe.beige { background-color: #F8F5EE;}

/* redFrame */
.redFrame {
	background-color: #db4552;
    color: #FFF;
    padding: 3px 8px;
    display: inline-block;
    margin-left: 25px;
    font-size: 0.6em;
    font-weight: bold;
    vertical-align: text-top;
}

/* img.circle */
img.circle {
    border-radius:50%;
    border:solid 20px #F8F5EE;
}

/*------------------------------------------- illust */

               /* ゆらゆらイラスト設定 */

/*------------------------------------------------- */

.illust p {
	position: absolute;
    top: -30%;
    left: 5%;
    z-index: 9;
    animation: fadeIn01 0.5s linear;
    animation-fill-mode: both;
    width: 150px;
    height: 100px;
    list-style: none;
    padding: 0;
    margin: 0;
}
								@media screen and (max-width: 798px) {
									.illust p {
    									width: 86px;
									}
								}

.illust span {
	top: 82%;
    left: 16.5%;
	animation: fadeIn02 0.5s linear;
	animation: horizontal 1s ease-in-out infinite alternate;
	animation-duration: 1.3s;
}
.illust img {
	animation-name: vertical;
    transform: rotate(30deg);
    animation-duration: 3s;
	animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
	width: 100%;
}

.illust img.duration4s {
    animation-duration: 4s;
}
.illust img.duration7s {
    animation-duration: 7s;
}

@keyframes vertical {
    0% { transform:translateY(-30px); }
  100% { transform:translateY(  0px); }
}


/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: main common */
.con {
	padding-bottom: 30px;
	border-bottom: dotted 1px #CCCCCC;
}


/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: lower common */





/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: common contents */

/*--------------------------------------- container */

html {
	height: 100%;
	margin: 0;
	padding: 0;
	background:url(../img/bg.jpg) 0 0 repeat;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
  overflow-x: hidden;
}

.copy span ,
footer .inner,
article {
	display:block;
	width:100%;
	max-width: 978px;
	margin: 0 auto;
	text-align: left;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding:0 30px;
	position:relative;
}

/*--------------------------------------- header */
header {
	position:fixed;
	z-index: 999999;
	top:0;
	width:100%;
}
.lower header {
	position:fixed;
	z-index: 99999;
	top:0;
	width:100%;
	background-image:url("../img/illust04.png"), url("../img/illust05.png") ;
	background-repeat:no-repeat, no-repeat;
	background-position:top left, top right;
	background-size: 25% auto , 25% auto;
	background-attachment: fixed;
	height:220px;
}
 									@media screen and (max-width:498px){
										.lower header {
											background-size: 100% auto , 100% auto;
										}
									}

header>div {
	background-color: rgb(255,255,255,0.7);
}
 									@media screen and (max-width:498px){
										.lower header {
											background-size: 35% auto , 35% auto;
										}
									}

header a {
	color: #000;
	text-decoration: none;
	display: block;
}

header a:hover {
	text-decoration: underline;
}

header #header_logo,
nav.gNavi li {
	display: inline-block;
	vertical-align: middle;
	text-align: center;
}
nav.gNavi li span {
    display: block;
    color: #000;
    font-size: 0.8em;
}
header #header_logo {
	font-size: 1em;
	background-color:#FFF;
	padding:8px 10px 8px 0;
}
header div {
	position: relative;
}

header #header_logo img,
header #header_logo span {
	display: inline-block;
	vertical-align: middle;
}
header #header_logo img {
	width: auto;
	max-width: 270px;
}
header #header_logo span {
	font-size: 0.9em;
	padding: 0 20px;
}

/* global navigation */
nav.gNavi ul {
	padding: 0;
	font-family: 'Ubuntu Condensed', sans-serif;
	font-size:1.1em;
}

nav.gNavi li a {
	display: block;
	padding: 1.5em;
	text-decoration: none;
	background-color:#FFF;
	position: relative;
}
nav.gNavi li.li_new a:after {
	content: "New!";
	display: block;
	color: #db3c38;
	font-size: 0.9em;
	text-align: center;
	position: absolute;
	bottom: 8px;
	left: 0;
	width: 100%;
}

nav.gNavi li.share_btn {
	cursor: pointer;
	background-image: url(img/share_btn.png);
	background-position: bottom 1.5em center;
	background-repeat: no-repeat;
	background-color: #FFF;
}
nav.gNavi li.share_btn span {
	display: block;
	padding: 1em 1.5em 3em;
	background-color: transparent;
	transition: 0.2s;
}
nav.gNavi li.share_btn span:hover {
	color: #dad2c5;
	background-color: rgba(255, 255, 255, 0.8);
}


nav.gNavi li.sns_btn {
	cursor: pointer;
	background-image: url(img/sns_btn.png);
	background-position: bottom 1.5em center;
	background-repeat: no-repeat;
	background-color: #FFF;
}
nav.gNavi li.sns_btn span {
	display: block;
	padding: 1em 1.5em 3em;
	background-color: transparent;
	transition: 0.2s;
}
nav.gNavi li.sns_btn span:hover {
	color: #dad2c5;
	background-color: rgba(255, 255, 255, 0.8);
}


/* share_box */
.share_bg,
.sns_bg {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
	z-index: 999999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s,visibility 0.2s;
}
.share_bg.bg_fixed,
.sns_bg.bg_fixed {
	opacity: 1;
	visibility: visible;
}
.share_bg .close_btn,
.sns_bg .close_btn{
	background-image: url(img/btn_close.png);
	background-position: center;
	background-repeat: no-repeat;
	position: fixed;
	right: 5%;
	top: 5%;
	width: 40px;
	height: 40px;
	cursor: pointer;
}
.share_box,
.sns_box {
	padding: 0 20px;
	position: fixed;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1000000;
	display: none;
	opacity: 0;
	visibility: hidden;
	transition: 0.2s transform, 0.2s opacity, 0.2s visibility;
}
.share_box.menu_fixed,
.sns_box.menu_fixed {
	display: block;
	opacity: 1;
	visibility: visible;
}
.share_box_inner,
.sns_box_inner {
	background-color: #fff;
	margin: 0 auto;
}
.share_titile,
.sns_titile {
	font-size: 2em;
	font-weight: bold;
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
	padding: 5px 10px 5px 30px;
	background-image: url(img/share_btn.png);
	background-position: left center;
	background-repeat: no-repeat;
}
.sns_titile {
	background-image: url(img/sns_btn.png);
}
.share_box ul,
.sns_box ul {
	padding: 0;
	list-style: none;
	display: block;
	text-align: center;
}
.share_box ul li,
.sns_box ul li {
	display: inline-block;
	vertical-align: middle;
	padding: 2px 5px;
}
.share_box ul li a,
.sns_box ul li a {
	text-decoration: none;
	display: block;
	padding: 28px;
	background-position: center;
	background-repeat: no-repeat;
	background-color: #958468;
	border-radius: 100%;
}
.share_box ul li.li_twitter a,
.sns_box ul li.li_twitter a {
	background-image: url(img/share_twitter.png);
}
.share_box ul li.li_facebook a,
.sns_box ul li.li_facebook a {
	background-image: url(img/share_facebook.png);
}
.share_box ul li.li_mail a {
	background-image: url(img/share_mail.png);
}
.sns_box ul li.li_instagram a {
	background-image: url(img/share_instagram.png);
}


@media screen and (max-width: 1200px) {
	nav.gNavi li a {
		padding: 2.3em 1.5em;
	}
	nav.gNavi li.share_btn span,
	nav.gNavi li.sns_btn span {
		padding: 1em 1.5em 3.6em;
	}
}
@media screen and (max-width: 850px) {
	nav.gNavi li a {
		padding: 2.3em 1em;
	}
	nav.gNavi li.share_btn span,
	nav.gNavi li.sns_btn span {
		padding: 1em 1em 3.6em;
	}
}

@media screen and (min-width: 780px), print {

	nav.gNavi {
		float: right;
	}
	nav.gNavi ul {
		padding: 0;
	}
	.sp_menu,
	.sp_menu_btn {
		display: none;
	}
	.share_box_inner,
	.sns_box_inner {
		padding: 40px;
	}
}
@media screen and (max-width:779px) {
	header #header_logo {
		padding: 10px 8px;
	}
	header #header_logo img {
		max-height: 46px;
	}
	.gNavi {
		display:none;
	}
	.sp_menu_bg {
		position: fixed;
		left: 0;
		top: 0;
		z-index: 20;
		width: 100%;
		height: 100%;
		background-color: rgba(255, 255, 255, 0.5);
		display: none;
	}
	.sp_menu_bg.bg_fixed {
		display: block;
	}
	
	
.sp_menu_btn {
  position: fixed;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
  background-color: pink;
  transition: width .2s;
}

.menu--isOpen {
  width: 40vw;
}

.sp_menu_btn span {
  display: block;
  width: 50%;
  margin: auto;
  height: 3px;
  background-color: var(--main-color02);
  position: absolute;
  left: 0;
  right: 0;
  top: calc((100% - 4px)/2);
  border-radius: 3px;
  transition: .2s;
}

.menu__lineTop {
  transform: translateY(-8px);
}

.menu__lineMiddle {}

.menu__lineBottom {
  transform: translateY(8px);
}

.sp_menu_btn.close .menu__lineTop {
  transform: rotate(45deg);  
}

.sp_menu_btn.close .menu__lineMiddle {
  opacity: 0;
}

.sp_menu_btn.close .menu__lineBottom {
  transform: rotate(-45deg);  
}	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	.sp_menu_btn {
		position: fixed;
		top: 10px;
		right: 10px;
		width: 46px;
		height: 46px;
		z-index: 9999999;
		background-color: #FFF;
		border-radius:46px;
	}

	.sp_menu {
		position: fixed;
		z-index: 999999;
		right: -100%;
		top: 0;
		width: 100%;
		max-width: 280px;
		height: 100%;
		padding: 60px 20px;
		background-color: var(--main-color);
		box-shadow: -3px 0 10px rgba(52, 88, 119, 0.3);
		overflow-y: auto;
		opacity:0;
		transition: right 0.3s;
	}
	.sp_menu_navi ul {
		list-style: none;
		padding: 0;
	}
	.sp_menu_navi ul li {
		border-top: 1px solid #423d36;
	}
	.sp_menu_navi li a,
	.sp_menu_navi li.share_btn span,
	.sp_menu_navi li.sns_btn span {
		color: #423d36;
		display: block;
		text-decoration: none;
		padding: 10px 0;
	}
	.sp_menu_navi span {
		display:inline-block;
		margin-left:1.5em;
		font-size:0.8em;
	}
	}
	.sp_menu.menu_fixed {
		right: 0;
		opacity: 10;
	}
	.share_box_inner,
	.sns_box_inner {
		padding: 20px;
	}
}
@media screen and (min-width: 780px) and (max-width:1200px) {
	nav.gNavi {
		font-size: 0.9em;
	}
}
@media screen and (min-width:641px), print  {
	.share_box,
	.sns_box {
		width: 100%;
		max-width: 360px;
	}
}
@media screen and (max-width:640px) {
	.share_box,
	.share_box.menu_fixed,
	.sns_box,
	.sns_box.menu_fixed {
		left: 0;
		width: 100%;
		-webkit-transform: translate(0, -50%);
		transform: translate(0, -50%);
	}

}
@media screen and (max-width:479px) {
	header #header_inner {
		padding: 0 60px 0 0;
	}
	header #header_logo a {
		display: block;
		text-align: left;
	}

}

/*--------------------------------------- mainContaints */
section {
	padding:120px 0 130px;
	margin:0 auto;
	line-height:1.7;
}
section.colorWhite {
	background-color:#FFF;
}
					@media screen and (max-width:798px){
							section {
									padding:80px 0 50px;
							}
						}
					@media screen and (max-width:498px){
							section {
									padding:50px 0 80px;
							}
            .lower section {
                overflow-x: hidden;
                overflow-y: hidden;
							}
						}

article {
	padding:0 30px;
}

.catchphrase {
	text-align:center;
	margin-bottom:40px;
}
.catchphrase.deco {
	background:url(../img/illust10.png) top center no-repeat;
	padding-top: 43px;
    background-size: 107px auto;
	font-size:1.2em;
}

/* -----------  layoutBox */
.layoutBox {
	width:100%;
	clear:both;
	float:left;
}

.layout2:nth-of-type(odd),
.layout3:nth-of-type(odd),
.layout4:nth-of-type(odd),
.layout5:nth-of-type(odd),
.layout6:nth-of-type(odd),
.layout7:nth-of-type(odd),
.layout8:nth-of-type(odd),
.layout9:nth-of-type(odd) {
	float:left;
	clear:inherit;
}
								@media screen and (max-width: 678px) {
									.layout2:nth-of-type(odd),
									.layout3:nth-of-type(odd),
									.layout4:nth-of-type(odd),
									.layout5:nth-of-type(odd),
									.layout6:nth-of-type(odd),
									.layout7:nth-of-type(odd),
									.layout8:nth-of-type(odd),
									.layout9:nth-of-type(odd) {
   										 margin-bottom:50px;
									}
								}

.layout2:nth-of-type(even),
.layout3:nth-of-type(even),
.layout4:nth-of-type(even),
.layout5:nth-of-type(even),
.layout6:nth-of-type(even),
.layout7:nth-of-type(even),
.layout8:nth-of-type(even),
.layout9:nth-of-type(even) {
	float:right;
}

									@media screen and (max-width:678px){
										.layoutBox {
											padding-bottom:20px;
										}
									}

.layout5.floatL {
	float:left;
	clear:both;
}
.layout5.floatR {
	float:right;
}

.layout2 {
	width:16.6%;
}
.layout3 {
	width:24%;
}
.layout4 {
	width:31%;
}
.layout4.floatR {
	float:right;
  clear:initial;
}
.layout5 {
	width:41.6%;
}
.layout6 {
	width:49%;
}
.layout7 {
	width:58.3%;
}
.layout7.floatR {
	float:right;
  clear:initial;
}
.layout7.floatL {
	float:left;
  clear:initial;
}
.layout8 {
	width:65%;
}
.layout9 {
	width:75%;
}
.layout12 {
	width:100%;
}

.layoutBox.split3 div {
  padding:0 30px 0 0;
  width:33.3%;
}
.layoutBox.split3 div:last-of-type {
  padding:0 0 0 0;
}
.layoutBox.split3 div:nth-of-type(odd),
.layoutBox.split3 div:nth-of-type(even) {
  float:left;
  clear: initial;
}
									@media screen and (max-width:678px){
										.layout2,.layout3,.layout4,.layout5,.layout6,.layout7,.layout8,.layout9 {
											width:100%;
										}
									}
					@media screen and (max-width:498px){
							.layoutBox.split3 .layout3 {
									width:100%;
							}
						}

/*--------------------------------------- footer */
footer {
	padding:90px 0 80PX;
	background:url(../img/bg02.jpg) 0 0 repeat;
	position:relative;
}
								@media screen and (max-width: 779px) {
									footer {
   										 padding:50px 20px 60px;
									}
								}

footer article {
	position: relative;
    background-color: #F8F5EE;
    -webkit-box-shadow: 2px 3px 5px -3px rgba(0, 0, 0, 0.3);
    box-shadow: 2px 3px 5px -3px rgba(0, 0, 0, 0.3);
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 25px;
    padding: 40px 40px 50px;
}
								@media screen and (max-width: 779px) {
									footer article {
   										 padding: 40px 20px 50px;
									}
									footer .catchphrase {
										text-align:left;
									}
								}

footer article dt {
	text-align:center;
	font-weight: 700;
    margin-bottom: 15px;
    text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF, -2px 2px 0 #FFF, 2px -2px 0 #FFF, 0px 2px 0 #FFF, -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;
    -webkit-transform: rotate(0.2deg);
    -ms-transform: rotate(0.2deg);
    transform: rotate(0.2deg);
    letter-spacing: .2em;
}
footer dd access {
	display:block;
	margin:10px auto 20px;
}
footer .tel {
	margin-bottom:20px;
	text-align:center;
}
footer .tel a {
	color:#000;
	font-weight:900;
	text-decoration:none;
	font-size: 2.3em;
    text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF, -2px 2px 0 #FFF, 2px -2px 0 #FFF, 0px 2px 0 #FFF, -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;
    -webkit-transform: rotate(0.2deg);
    -ms-transform: rotate(0.2deg);
    transform: rotate(0.2deg);
	line-height: 1;
}
footer .tel a i {
	margin-right:8px;
}
footer .tel span {
	display:block;
	font-size:0.9em;
}
footer .btn a {
	display: block;
}
footer .layoutBox {
	padding-bottom:0;
}
footer .illust p:nth-child(2) {
    top: 0%;
    left: -15%;
}
								@media screen and (max-width: 1024px) {
									footer .illust p:nth-child(2) {
										top:0%;
    									left: -4%;
									}
								}

								@media screen and (max-width: 779px) {
									footer .illust p:nth-child(1) {
										top: -8%;
										left: 13%;
									}
									footer .illust p:nth-child(2) {
    									left: 0%;
									}
								}
								@media screen and (max-width: 498px) {
									footer article dt {
    									letter-spacing: .05em;
									}
									footer article dt span {
    									display:block;
									}
								}

footer .illust p:nth-child(3) {
    top: 0%;
    left: 85%;
    animation: fadeIn01 2s linear;
}
								@media screen and (max-width: 779px) {
									footer .illust p:nth-child(3) {
   										 top: -8%;
  										 left: 77%;
									}
								}
								@media screen and (max-width: 478px) {
									footer .illust p:nth-child(3) {
  										 left: 68%;
									}
								}

.pgtp {
	background-color:#dca02b;
}



.copy {
	letter-spacing:0.1em;
	text-align:right;
	padding:20px 0 60px;
	background:url(../img/illust03.png) 0 100% repeat-x #eae6dd;
}
.copy.zigzag02::before {
  background: linear-gradient(45deg, #eae6dd 10px, transparent 0), linear-gradient(315deg, #eae6dd 10px, transparent 0);
  background-size: 20px 20px;
}
.copy span {
	text-align:right;
}
 									@media screen and (max-width:798px){
										.copy {
											padding: 10px 0 55px;
										}
										.copy span {
											text-align:center;
										}
									}
 									@media screen and (max-width:478px){
										.copy {
											padding: 10px 0 80px;
										}
									}

/* sfNavi */
.sfNavi {
	display:none;
}
								@media screen and (max-width:478px){
										.sfNavi {
											display:-webkit-box;
											display:flex;
											-webkit-box-pack:space-around;
											justify-content:space-around;
											position:fixed;
											bottom:0;
											left:0;
											width:100%;
											z-index:99999999;
											background-color: #fff;
											border-top:solid 1px #ccc;
											border-bottom:solid 1px #ccc;
										}
										.sfNavi li {
											-webkit-box-flex:1;
											flex-grow:1;
											text-align:center;
											border-right:solid 1px #ccc;
										}
										.sfNavi li:last-of-type {
											border-right:none;
										}

										.sfNavi li a {
											display:block;
											padding:10px 0;
											text-decoration:none;
										}
										.sfNavi li a i {
											font-size:1.3em;
										}
										.sfNavi li a span {
											display:block;
											font-size:0.8em;
											color:#56585a;
										}

									}

/* page top */
.pageTop {
	width:60px;
	height:60px;
    position: fixed;
    right: 20px;
    bottom: -60px;
    z-index: 20;
    background-color: var(--main-color02);
    transition: bottom 0.6s ease-out 0s;
}
								@media screen and (max-width:478px){
										.pageTop {
											display: block;
											text-align: center;
											width: 100%;
											height: 60px;
											position: relative;
											right: 0;
											margin-bottom:58px;
										}
									}

.pageTop span {
    position: relative;
    display: inline-block;
    color: #000;
    vertical-align: middle;
	height:60px;
}
.pageTop span::before,
.pageTop span::after{
    position: absolute;
    top: 16px;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.pageTop span::before{
    left: 22px;
    width: 16px;
    height: 16px;
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
								@media screen and (max-width:478px){
										.pageTop span::before{
											left: 0;
										}
									}

.pageTop:hover {
    opacity: .87;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=87)";
}

.pageTop.is-show {
    bottom: 0;
}



/*---------------------------------------  */
.forTab {
	display:none;
}


@media screen and (max-width:478px){
.pc,
.forPc {
	display:none;
}
.sp,
.forSp {
	display:inherit;
}
}
@media screen and (max-width:978px){
.forTab {
	display:block;
}
.forPcNoneTab {
	display:none;
}

}


/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: main */

/*--------------------------------------- default 標準ページ */
.default {
	background-image : url(../img/lower_ttl_img.jpg);
	background-repeat: no-repeat;
	background-size:100% auto;
	background-position:top center;
}
.default article {
	width:100%;
	padding:0;
	max-width: 100%;
}
.default article .ttl {
    display: flex;
    justify-content: space-between;
}
						@media screen and (max-width:798px){
							.default article .ttl {
								display:block;
							}
							
						}

.default article:nth-of-type(odd) .ttl h2:nth-of-type(2) {
	display:none;
}
.default article:nth-of-type(even) .ttl h2:nth-of-type(1) {
	display:none;
}
						@media screen and (max-width:798px){
							.default article:nth-of-type(even) .ttl h2:nth-of-type(1) {
								display:block;
							}
							.default article:nth-of-type(even) .ttl h2:nth-of-type(2) {
								display:none;
							}
						}

.default h2 {
	width: 53.66667vw;
	text-align:right;
	min-height: 320px;
}
							.default article:nth-of-type(even) h2 {
								text-align:left;
							}
						@media screen and (max-width:798px){
							.default h2 {
								min-height: auto;
							}
						}
					@media screen and (max-width:798px){
							.default h2 {
								width: 100%;
								flex-wrap: inherit;
							}
						}

						@media screen and (max-width:978px){
							.default h2 {
								padding:0;
								text-align:left;
							}
							.default h2 span {
								margin-left:30px;
							}

						}
						
.default article:nth-of-type(even) .noImage h2 {
	width: 70vw;
    margin-left: auto;
}
.default article:nth-of-type(odd) .noImage h2 {
	width: 100%;
	max-width:978px;
	margin: 0 auto;
	text-align:left;
}

.default .pic {
	width: 43.33333vw;
    height: 31.66667vw !important;
    max-height: 380px !important;
	overflow: hidden;
    position: relative;
	top: 0;
    left: 0;
}
						@media screen and (max-width:978px){
							.default .pic {
								width: 80.33333vw;
							}
						}
						@media screen and (max-width:798px){
							.default .pic {
								width: 100%;
							}
						}
						@media screen and (max-width:478px){
							.default .pic {
								height: 45.66667vw !important;
							}
						}
.default .pic img {
	width:100%;
}

.default .txt {
	opacity: 1 !important;
    transform: translateY(0);
	width: 70vw;
    margin-top: -140px;
    margin-left: auto;
	margin-bottom:150px;
    background:rgba(227,235,248,0.8);
    position: relative;
    z-index: 2;
	min-height: 160px;
	padding:30px;
	text-align:right;
}
						@media screen and (max-width:978px){
							.default .txt {
								width: 85%;
								margin-top: -90px;
								margin-bottom:50px;
							}
						}
						@media screen and (max-width:798px){
							.default .txt {
								margin-top: -10px;
								width: 94%;
							}
						}

.default .txt.noTtl {
	margin-top:0;
}

.default .txtInner {
	width:100%;
	max-width :780px;
	text-align:left;
	margin: 0 auto 0 0;
}
.default article:nth-of-type(odd) .pic {
    left: auto;
    right: 0;
	margin: 0 0 0 auto;
}

.default article:nth-of-type(odd) .txt {
    margin-right: auto;
    margin-left: 0;
	text-align:left;
}
						@media screen and (max-width:978px){
							.default article:nth-of-type(odd) .txt {
								width: 85vw;
							}
						}
						@media screen and (max-width:798px){
							.default article:nth-of-type(odd) .txt {
								width: 94%;
							}
						}

.default article:nth-of-type(odd) .txtInner {
	margin: 0 0 0 auto;
}

.default article:last-of-type .txt {
	margin-bottom:30px;
}

/*--------------------------------------- normal 標準ページ02 */
.normal {
	background-image : url(../img/lower_ttl_img.jpg);
	background-repeat: no-repeat;
	background-size:100% auto;
	background-position:top center;
}
.normal article {
	width:100%;
	padding:0 20px 60px;
	
}


/*--------------------------------------- index.html */

                   /* TOPページ */

/*------------------------------------------------- */

/* section_main_img */
.section_main_img .main_illust {
	position:absolute;
	width:100%;
	top:0;
	left:0;
	z-index: 99;
}
.section_main_img .main_illust img {
	width:100%;
}
.section_main_img .illust p {
    top: 90%;
    left: 16%;
}
								@media screen and (max-width: 779px) {
									.section_main_img .illust p {
										top: 97%;
    									left: 6%;
								}
								}

.section_main_img {
	background-color: #FFF;
    margin-top: 0;
    position: relative;
    padding: 0;
}

.swiper-slide {
	text-align: center;
}
.swiper-slide a {
	color: #ffffff;
	display: block;
	text-decoration: none;
}
.swiper-slide .slideBox {
	display: block;
	position: relative;
}
.swiper-slide .slideBox:after { /* この要素が内向きのシャドウを写真に落とす */
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 99.2%;
	box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.5),
		inset 0 0 100px rgba(0, 0, 0, 0.2);
}
.swiper-slide .slideBox img {
	width: 100%;
}
.swiper-slide .text {
	color: #ffffff;
	display: block;
	padding: 0 45px;
	text-align: center;
	position: absolute;
	width: 100%;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%); /* Safari用 */
	transform: translateY(-50%);
	/*
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );
	*/
}
.list_thumbnail.list_top {
	padding: 0;
}
.list_thumbnail.list_top li .listBox {
	padding: 0;
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
	background-image: url(img/icon_arrow_prev.png);
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
	background-image: url(img/icon_arrow_next.png);
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next,
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
	transition: 0.2s;
}
.swiper-button-prev:hover, .swiper-container-rtl .swiper-button-next:hover,
.swiper-button-next:hover, .swiper-container-rtl .swiper-button-prev:hover {
	opacity: 0.6;
}

.announce {
	position:absolute;
	bottom:0.7%;
	left:0;
	width:100%;
	z-index:99999;
	padding:20px;
	text-align:center;
	font-size:1.3em;
	background: -moz-linear-gradient(top,  rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.5) 65%, rgba(0,0,0,0.5) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.5) 65%,rgba(0,0,0,0.5) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.5) 65%,rgba(0,0,0,0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33000000', endColorstr='#80000000',GradientType=0 ); /* IE6-9 */
}
.announce a {
	color:#FFF;
}
.announce .redFrame {
	margin-right:20px;
	font-size:0.8em;
	vertical-align:middle;
}



@media screen and (min-width: 780px), print {
	.swiper-slide .text {
		font-size: 1.2em;
	}
	.swiper-slide .slideBox .sp{
		display: none;
	}
}
@media screen and (max-width:478px) {
	.swiper-slide .slideBox .pc{
		display: none;
	}
	.announce a {
		display:block;
	}

}


.topNews .illust p {
    top: 80%;
    left: 84%;
}
								@media screen and (max-width: 779px) {
									.topNews .illust p {
   										 top: 95%;
   										 left: 72%;
									}
								}
								@media screen and (max-width: 478px) {
									.topNews .illust p {
   										 left: 74%;
									}
								}

.topRecruit .illust p {
    top: -10%;
    left: 0;
	width: 260px;
}

.topRecruit .illust p:nth-of-type(2) {
    top: 10%;
    left: 90%;
	width: 110px;
}
								@media screen and (max-width: 1024px) {
									.topRecruit .illust p {
   										 left: 60px;
   										 width: 240px;
									}
									.topRecruit .illust p:nth-of-type(2) {
										top: 15%;
										left: 80%;
									}
								}
								@media screen and (max-width: 779px) {
									.topRecruit .illust p {
   										 left: 15px;
										 width: 160px;
									}
									.topRecruit .illust p:nth-of-type(2) {
										top: 15%;
										left: 80%;
										width: 80px;
									}
								}
								@media screen and (max-width: 550px) {
									.topRecruit .illust p {
   										 top: -6%;
									}
									.topRecruit .illust p:nth-of-type(2) {
										top: 13%;
									}
								}
								@media screen and (max-width: 478px) {
									.topRecruit .illust p:nth-of-type(2) {
										width: 67px;
									}
								}

/*------------------------------------------- news */

                 /* お知らせ */

/*------------------------------------------------- */

/*--------------------------------------- list_text */
.list_text,
.list_text li {
	display: block;
	padding: 0;
	margin: 0;
}
.list_text {
	padding: 1em 0;
}
.list_text li {
	border-bottom: 1px solid #ccc;
}
.list_text li:first-child {
	border-top: 1px solid #ccc;
}

.list_text li a {
	text-decoration:none;
	display: block;
	background-image: url(./img/icon_right_circle.png);
	background-position: center right;
	padding-right: 40px;
	background-repeat: no-repeat;
}
.list_text li a:before {
	content: "";
	width: 40px;
	height: 40px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background-color: #c6c6c6;
}
.list_text li .listBox {
	width: 100%;
	display: block;
	padding: 15px 0;
}
.list_text li .date {
	font-size: 0.9em;
}
.list_text li .new {
	font-size: 0.9em;
	margin-left: 20px;
	padding: 2px 10px;
	background-color: #ca0303;
	color: #ffffff;
}
.list_text li .listBox .date,
.list_text li .listBox .new {
	display: inline-block;
	vertical-align: middle;
}
.list_text li .listBox .text {
	padding-top: 10px;
	display: block;
}

@media screen and (min-width: 780px){
ul .leftinline{float:left; margin-right:10px;}
}

#recruiting .fadein .colorframe.beige dl {
  margin-top:40px;
}

/*------------------------------------------- about */

              /* 園について */

/*------------------------------------------------- */
/* freeting */
.body_about .greeting .layout8 {
	padding-top:30px;
}

                                @media screen and (max-width: 478px) {
									.body_about .greeting .layout8 {
										padding-top:0;
									}
								}

/* Features */
.body_about .features div:last-of-type {
  margin-bottom:0;
}
								@media screen and (max-width: 498px) {
                  .body_about .features div .layout4 {
                    margin-bottom:20px;
                  }
									.body_about .features div .pt80 {
    									padding-top:0;
									}
                  .body_about .features div {
                      margin-bottom:20px;
                  }
								}

/* asoiku */
.body_about .asoiku {
  padding: 120px 0 70px;
}
								@media screen and (max-width: 498px) {
                  .body_about .asoiku {
                      padding: 80px 0 10px;
                  }
								}
.body_about .asoiku .layoutBox:first-of-type .layout4 {
  padding-top:20px;
}
.body_about .asoiku .layoutBox:last-of-type {
  padding-top:10px;
}
.body_about .asoiku .layoutBox:last-of-type .layout8 {
  padding-top:50px;
}
								@media screen and (max-width: 498px) {
                  .body_about .asoiku .layoutBox:first-of-type .layout8 {
                      padding-top:0;
                      margin-bottom:0;
                  }
								}

.body_about .asoiku .layoutBox:last-of-type .layout4 img {
  width:68%;
  height:68%;
}
.body_about .asoiku .layoutBox:last-of-type .layout4 img:last-of-type {
  width:80%;
  height:80%;
  margin:-80px -10px 0 25%;
}

/* flex-schedul */
.flex-schedule {
  list-style: none;
  margin: 0 auto 0 0;
  box-sizing: border-box;
}

.flex-schedule li {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;

}

.flex-schedule .area {
  padding: 20px 10px;
  display: block;
  width: 100%;
  border-left: 6px solid var(--main-color02);
}

.flex-schedule li .time {
  display: inline-flex;
  justify-content: flex-end;
  flex-basis: 10em;
  max-width: 12em;
  margin-right: 1em;
  margin-top: 30px;
}

.flex-schedule .sch_box {
  position: relative;
  min-height: 1em;
  padding: 1em;
  background: #F8F5EE;
  border-radius: 6px;
}

.flex-schedule .sch_box::before {
  content: "";
  position: absolute;
  left: -23px;
  top: 20px;
  background: var(--main-color02);
  width: 20px;
  height: 20px;
  border-radius: 10px;
}

.flex-schedule .sch_title {
  font-weight: 700;
}

.flex-schedule .sch_tx {
  font-size: 14px;
  font-weight: normal;
}

.body_about #flow .illust p {
  bottom: 20%;
  right: 5%;
  top: auto;
  left: auto;
  width: 19%;
}
.body_about #flow .illust p:nth-of-type(2) {
  bottom: auto;
  right: 11%;
  width: 22%;
  top:150px;
}
.body_about #flow .illust p:nth-of-type(3) {
  bottom: 5%;
  right: 22%;
  width: 33%;
  top:auto;
}

								@media screen and (max-width: 779px) {
									.body_about #flow .illust p {
   										 bottom: 10%;
									}
                  .body_about #flow .illust p:nth-of-type(2) {
                    top:150px;
                  }
									.body_about #flow .illust p:nth-of-type(3) {
										bottom: 3%;
									}
								}


/*------------------------------------------- contact */

              /* お問い合わせフォーム */

/*------------------------------------------------- */
.body_contact .infoText {
	margin:20px 0 30px;
}
.body_contact table {
	margin-bottom:30px;
}
.body_contact .privacy {
	font-size:0.8em;
	overflow-y: scroll;
	margin: 50px auto 20px;
	padding: 25px;
	height: 280px;
	border: 2px solid #ccc;
}
.body_contact .privacy dt {
	font-weight:bold;
}
.body_contact .privacy dd {
	padding-bottom:1.5em;
}

/* ---------  contact form */
.form_flow {
	width: 100%;
	margin: 20px auto 0;
	padding: 0;
	display: table;
	table-layout: fixed;
}

.form_flow li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	border-left: 10px solid #ffffff;
	padding: 0 5px;
	width: 34%;
	background-color: #adadad;
}

.form_flow li:first-child {
	border-left: none;
}

.form_flow li.current {
	background-color: var(--main-color02);
}

.form_flow li span {
	color: #ffffff;
	font-size: 0.9em;
	padding: 10px;
	width: 100%;
	display: block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}

#input-table {
	display: block;
	width: 100%;
	max-width: 100%;
}

#input-table table {
	width: 100%;
	padding: 5px;
	margin: 0 auto 20px;
	border: none;
	box-shadow: inset 0 0 0 2px #f0f0f0;
	background-color: #ffffff;
}

#input-table table li {
	margin-left: 0;
}

#input-table table th {
	width: 35%;
	padding: 20px 60px 20px 30px;
	color: #3f4242;
	background: rgba(0, 0, 0, 0);
	text-align: left;
	border: none;
	position: relative;
	vertical-align: top;
}
#input-table table th span {
	padding-left:10px;
	display:inline-block;
	color:red;
}

#input-table table td {
	padding-left: 10px;
}

#input-table table tr {
	transition: background-color linear 0.2s;
	border-top: 1px solid #ccc;
}

#input-table table tr:hover {
	background-color: rgba(0, 0, 0, 0.05);
}

#input-table table tr:first-child {
	border-top: 5px solid #f0f0f0;
}

#input-table table tr:last-child {
	border-top: 2px solid #f0f0f0;
}

.input_required,
.input_not_required:before {
	font-size: 0.9em;
	padding: 2px 6px;
	display: inline-block;
	background-color: #958468;
	color: #ffffff;
	position: absolute;
	right: 10px;
	top: 20px;
}

#input-table table td {
	padding: 20px 30px;
	border: none;
	text-align: left;
}

#input-table table tr:last-child td {
	text-align: center;
}

#input-table div.formcomment {
	clear: both;
	margin-left: 7px;
	margin-top: 3px;
}

#input-table table td ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
input[type="text"],
input[type="password"] {
	border: 0;
	padding: 4px;
	border: solid 1px #ccc;
	max-width: 100% !important;
	resize: none;
	border-radius: 5px;
}

.body_textbook_form input[type="text"] {
	margin-bottom: 10px;
}

#input-table table .form_input_addnumber {
	width: 40% !important;
}

#input-table table textarea {
	padding: 10px;
	width: 96% !important;
	border: solid 1px #ccc;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

input:focus,
input:textarea {
	border: solid 1px #3ba5eb;
}

.submit_button {
	text-align: center;
	padding-top: 20px;
}

.input_button {
	font-size: 1.2em;
	font-weight: bold;
	-webkit-appearance: none;
	padding: 4px 10px;
	background-color: var(--main-color02);
	color: #ffffff;
	border: none;
	border-radius: 5px;
	cursor: pointer;
}

.input_button {
	padding: 10px 50px;
}

@media screen and (max-width:779px) {
	#input-table table {
		width: 100%;
		border-collapse: collapse;
		border-bottom: 1px solid #CCCCCC;
	}
	#input-table table th ,
		#input-table table td {
		width: 100%;
		display: block;
		border-top: none;
		text-align: left;
	}

	#input-table table th {
		padding: 6px 45px 6px 12px;
		background: #eeeeee none repeat scroll 0 0;
		font-weight: normal;
	}
	#input-table table td {
		padding-bottom: 20px;
	}
	#input-table table td:after {
		content:"";
		display:block;
		clear:both;
	}
	input[type="text"], input[type="password"] {
		width: 100%!important;
	}
	#input-table table textarea {
		width: 96%;
		max-height: 24vw;
		font-size: 110%;
	}
	.input_required,
	.input_not_required:before {
		position: absolute;
		right: 10px;
		font-size: 0.8em;
		top: 6px;
	}
}
@media screen and (max-width:479px) {
	.form_flow li {
		display: block;
		width: 100%;
		border-left: 10px solid #cccccc;
		border-top: 1px dotted #ccc;
		text-align: left;
	}
	.form_flow li:first-child {
		border-top: none;
	}
}


.terms {
  width: calc(100% - 40px);
  max-width: 960px;
  margin: 0 auto 30px;
  text-align: left;
  font-size: 1.2rem;
}

.fmt_title_2 {
  background-color: #333;
  color: #FFF;
  font-size: 2rem;
  padding: 10px 0;
  text-align: center !important;
}


@media (max-width: 767px) {
  .terms {
    margin: 0 auto 40px;
  }
}

.terms .fmt_title_2 {
  display: block;
  margin-bottom: 40px;
  font-weight: bold;
}

@media (max-width: 767px) {
  .terms .fmt_title_2 {
    margin-bottom: 20px;
  }
}

.terms p {
  margin-bottom: 20px;
}

/*チェックは隠す*/
.accbox input {
  display: none;
}

  /*ボックス全体*/
  .accbox {
    margin: 2em 0;
    padding: 0;
  }
  /*ラベル*/
  .accbox label {
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    display: block;
    position: relative;
  }
  /*アイコンを表示*/
  .accbox label:before {
    content: '\f078';
    font-family: 'FontAwesome';
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    font-size: 1.4rem;
  }
  /*中身を非表示にしておく*/
  .accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    -webkit-transition: 0.8s;
    -o-transition: 0.8s;
    transition: 0.8s;
  }
  /*クリックで中身表示*/
  .cssacc:checked + label + .accshow {
    height: auto;
    padding: 5px;
    background: #fff;
    opacity: 1;
  }
  .accbox .accshow p {
    margin: 15px 10px;
  }
  /*アイコンを入れ替える*/
  .cssacc:checked + label:before {
    content: '\f077';
  }
#terms .accbox .accshow .tanto .mb15,
#terms .accbox .accshow ul li{margin-bottom:15px;}
#terms .accbox .accshow ul li dl dt{font-weight:bold;}
#terms .accbox .accshow .tanto{border:solid 1px #000;
padding:20px;}
#pagetop .colorWhite.zigzag02 .fadein form .checkbox{text-align:center;}



/*:::::::::::::::::::::::::::::::::::::::::::::::::::::::::: clear */
*:after,
.clearFix:after {
	content: "";
	display: block;
	clear: both;
}
