@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500;700&display=swap');

/* CSS Document */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/**
 * resets
 */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    list-style-type: none;
}


article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden] {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */


html {
  font-size: 62.5%;
  /*scroll-behavior: smooth;*/
}

html,
button,
input,
select,
textarea {   
	font-family:'Roboto','Zen Kaku Gothic New',"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif ;
}


body {
	margin: 0;
    padding: 0;
    font-size: 1.6rem;
    line-height: 1.9;
	position:relative;
	color:#333;
	letter-spacing:0.02em;
	overflow-x:hidden;
}


/* ==========================================================================
   Links
   ========================================================================== */
a:focus,a {
    outline: none;
}

a:active,
a:hover {
    outline: none;
}

/* ==========================================================================
   Typography
   ========================================================================== */

h1 {
    font-size: 2em;
    margin: 0;
}
h2,h3,h4{
    font-size: 2.8rem;
    margin: 0;
	font-weight:normal;
	letter-spacing: .1em;
}
abbr[title] {
    border-bottom: 1px dotted;
}
b,
strong {
    font-weight: bold;
}
blockquote {
    margin: 1em 40px;
}
dfn {
    font-style: italic;
}
hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}
mark {
    background: #ff0;
    color: #333333;
}
p,
pre {
    margin: 0;
}
code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    _font-family: 'courier new', monospace;
    font-size: 1em;
}
pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

q {
    quotes: none;
}
q:before,
q:after {
    content: '';
    content: none;
}

small {
    font-size: 80%;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}
sup {
    top: -0.5em;
}
sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Lists
   ========================================================================== */

dl,
menu,
ol,
ul,
dd {
    margin: 0;
}

menu,
ol,
ul {
    padding: 0;
}

nav ul,
nav ol {
    list-style: none;
    list-style-image: none;
}

img {
    border: 0; /* 1 */
    -ms-interpolation-mode: bicubic; /* 2 */
	max-width:100%;
	height:auto;
    vertical-align: bottom;
}
svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

form {
    margin: 0;
}
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}
legend {
    border: 0; /* 1 */
    padding: 0;
    white-space: normal; /* 2 */
    *margin-left: -7px; /* 3 */
}
button,
input,
select,
textarea {
    font-size: 100%; /* 1 */
    margin: 0; /* 2 */
    vertical-align: baseline; /* 3 */
    *vertical-align: middle; /* 3 */
}

button,
input {
    line-height: normal;
}
button,
select {
    text-transform: none;
}
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
    *overflow: visible;  /* 4 */
}
button[disabled],
html input[disabled] {
    cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
    *height: 13px; /* 3 */
    *width: 13px; /* 3 */
}
input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}
textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */
table {
    border-collapse: collapse;
    border-spacing: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
a{
	text-decoration:none;
	color:#333333;
}
a:hover{
	color:#ec670f;
}

/*clearfix*/
.cf:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.cf {
  min-height: 1px;
}

* html .cf {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}
/*margin*/
.mt-10				{ margin-top: 10px; }
.mt-15				{ margin-top: 15px; }
.mt-20				{ margin-top: 20px; }
.mt-25				{ margin-top: 25px; }
.mt-30				{ margin-top: 30px; }
.mt-35				{ margin-top: 35px; }
.mt-40				{ margin-top: 40px; }
.mt-45				{ margin-top: 45px; }
.mt-50				{ margin-top: 50px; }

.mr-10				{ margin-right: 10px; }
.mr-15				{ margin-right: 15px; }
.mr-20				{ margin-right: 20px; }
.mr-25				{ margin-right: 25px; }
.mr-30				{ margin-right: 30px; }
.mr-35				{ margin-right: 35px; }
.mr-40				{ margin-right: 40px; }
.mr-45				{ margin-right: 45px; }
.mr-50				{ margin-right: 50px; }

.ml-10				{ margin-left: 10px; }
.ml-15				{ margin-left: 15px; }
.ml-20				{ margin-left: 20px; }
.ml-25				{ margin-left: 25px; }
.ml-30				{ margin-left: 30px; }
.ml-35				{ margin-left: 35px; }
.ml-40				{ margin-left: 40px; }
.ml-45				{ margin-left: 45px; }
.ml-50				{ margin-left: 50px; }

.mb-10				{ margin-bottom: 10px; }
.mb-15				{ margin-bottom: 15px; }
.mb-20				{ margin-bottom: 20px; }
.mb-25				{ margin-bottom: 25px; }
.mb-30				{ margin-bottom: 30px; }

.mb-35				{ margin-bottom: 35px; }
.mb-40				{ margin-bottom: 40px; }
.mb-45				{ margin-bottom: 45px; }
.mb-50				{ margin-bottom: 50px; }

/*padding*/
.pt-10				{ padding-top: 10px; }
.pt-15				{ padding-top: 15px; }
.pt-20				{ padding-top: 20px; }
.pt-25				{ padding-top: 25px; }
.pt-30				{ padding-top: 30px; }
.pt-35				{ padding-top: 35px; }
.pt-40				{ padding-top: 40px; }
.pt-45				{ padding-top: 45px; }
.pt-50				{ padding-top: 50px; }

.pr-10				{ padding-right: 10px; }
.pr-15				{ padding-right: 15px; }
.pr-20				{ padding-right: 20px; }
.pr-25				{ padding-right: 25px; }
.pr-30				{ padding-right: 30px; }
.pr-35				{ padding-right: 35px; }
.pr-40				{ padding-right: 40px; }
.pr-45				{ padding-right: 45px; }
.pr-50				{ padding-right: 50px; }

.pl-10				{ padding-left: 10px; }
.pl-15				{ padding-left: 15px; }
.pl-20				{ padding-left: 20px; }
.pl-25				{ padding-left: 25px; }
.pl-30				{ padding-left: 30px; }
.pl-35				{ padding-left: 35px; }
.pl-40				{ padding-left: 40px; }
.pl-45				{ padding-left: 45px; }
.pl-50				{ padding-left: 50px; }

.pb-10				{ padding-bottom: 10px; }
.pb-15				{ padding-bottom: 15px; }
.pb-20				{ padding-bottom: 20px; }
.pb-25				{ padding-bottom: 25px; }
.pb-30				{ padding-bottom: 30px; }
.pb-35				{ padding-bottom: 35px; }
.pb-40				{ padding-bottom: 40px; }
.pb-45				{ padding-bottom: 45px; }
.pb-50				{ padding-bottom: 50px; }



/*---------------------------------------------------*/
.loading{
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index:99
}

.loading img{
  width: 200px;
  height:auto;
	animation:waai 1s steps(2, end) infinite;
}
@keyframes waai{
	0%{transform:rotate(5deg)}
	100%{transform:rotate(-5deg)}
}

header .pcnav{
}
header .pcnav li{
}
header .pcnav li a{
	white-space: nowrap;
}
header .pcnav li a.current{
}
header .pcnav li a:hover{
}


/*　ハンバーガーボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 0;
  top   : 0;
  background: #ec670f;
  width : 60px;
  height: 60px;
  cursor: pointer;
  text-align: center;
  border-radius: 0 0 0 20px;
}
.hamburger:after{
	content:"menu";
	position:absolute;
	bottom:4px;
	left:0;
	right:0;
	margin:auto;
	color:#fff;
	font-size:1.2rem;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 0;
  right:0;
  margin:auto;
  background : #fff;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 12px;
}
.hamburger span:nth-child(2) {
  top: 22px;
}
.hamburger span:nth-child(3) {
  top: 32px;
}

/* ナビ開いてる時のボタン */
/*.hamburger.active {
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition     : all 0.3s ease-in-out;
  transition        : all 0.3s ease-in-out;
  -webkit-transition-delay: 0.6s;
  -o-transition-delay     : 0.6s;
  transition-delay        : 0.6s;
  -webkit-transform: rotate(45deg);
  -ms-transform    : rotate(45deg);
  -o-transform     : rotate(45deg);
  transform        : rotate(45deg);
}*/
.hamburger.active span:nth-child(2){
  width: 0px;
}
.hamburger.active span:nth-child(1),
.hamburger.active span:nth-child(3){
  background :#fff;
  -webkit-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.hamburger.active span:nth-child(1){
  -webkit-transform: translateY(10px) rotate(45deg);
  -ms-transform    : translateY(10px) rotate(45deg);
  -o-transform     : translateY(10px) rotate(45deg);
  transform: translateY(10px) rotate(45deg);
}

.hamburger.active span:nth-child(3){
  -webkit-transform: translateY(-10px) rotate(-45deg);
  -ms-transform: translateY(-10px) rotate(-45deg);
  -o-transform : translateY(-10px) rotate(-45deg);
  transform: translateY(-10px) rotate(-45deg);
}


nav.globalMenuSp {
	position: fixed;
	z-index : 2;
	top  : 0;
	left : 0;
	color: #fff;
	background: #fff;
	text-align: center;
	width: 100%;
	height: 100vh;
	display: none;
	align-items: center;
}

nav.globalMenuSp div{
	height: 100%;
    display: flex;
    align-items: center;
    flex-flow: column;
    justify-content: center;
}
nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0 10%;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
  border-bottom:1px solid #ec670f;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #333333;
  padding: 1em 0;
  text-decoration :none;
  font-size: 1.8rem;
  text-align:left;
}
nav.globalMenuSp ul li{
	opacity: 0;
}

nav.globalMenuSp.active ul li:nth-child(1) {
  animation: example 0.5s ease .1s forwards;
}
nav.globalMenuSp.active ul li:nth-child(2) {
  animation: example 0.5s ease .2s forwards;
}
nav.globalMenuSp.active ul li:nth-child(3) {
  animation: example 0.5s ease .3s forwards;
}
nav.globalMenuSp.active ul li:nth-child(4) {
  animation: example 0.5s ease .4s forwards;
}
nav.globalMenuSp.active ul li:nth-child(5) {
  animation: example 0.5s ease .5s forwards;
}
nav.globalMenuSp.active ul li:nth-child(6) {
  animation: example 0.5s ease .6s forwards;
}
nav.globalMenuSp.active ul li:nth-child(7) {
  animation: example 0.5s ease .7s forwards;
}
nav.globalMenuSp.active ul li:nth-child(8) {
  animation: example 0.5s ease .8s forwards;
}
nav.globalMenuSp.active ul li:nth-child(9) {
  animation: example 0.5s ease .9s forwards;
}
@keyframes example {
	0% {
	  opacity:0;
	  transform:translateX(5%)
	}
	
	100% {
	  opacity: 1;
	}
}

.hamburger{
	display:none;
}

#f_btn{
	background:url(img/common/top.png) no-repeat center;
    width: 40px;
    height: 38px;
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 1;
}

/*---------------------------------------------------*/

.inner{
	max-width:1240px;
	padding:0 20px;
	margin:0 auto;
}
.inner_s{
	max-width:990px;
	margin:0 auto;
}

.pyon{
    animation: pyon1 1s ease-in-out infinite alternate;
}
@-webkit-keyframes  pyon1 {
    0% { transform:translateY( -8px); }
  100% { transform:translateY(  0px); }
}
.yurayura{
    animation: yurayura1 1s ease-in-out infinite alternate;
}
@-webkit-keyframes yurayura1 {
    0% { transform:rotate(3deg); }
  100% { transform:rotate(-3deg); }
}

@-webkit-keyframes kakukaku1 {
    0% { transform:rotate(8deg); }
	50% { transform:rotate(-2deg); }
  100% { transform:rotate(0); }
}

.btn_next{
	background: #ec670f;
    border: 1px solid #ec670f;
    color: #fff;
    text-align: center;
    font-weight: bold;
    width: 220px;
    padding: 10px 15px;
    border-radius: 30px 30px 0 30px;
    transition: color .3s, background .3s;
}
.btn_next:hover {
    background: none;
    color: #ec670f;
}

.midashi{
	font-size:3.4rem;
	font-weight:bold;
	text-align:center;
	line-height:1.4em;
}
.midashi span{
	font-size:1.8rem;
	color:#ec670f;
}

.about_message{
	padding:150px 0;
}
.about_message .inner_s{
	padding:0 20px;
}
.about_message h3{
	font-weight:bold;
	font-size:3rem;
    margin-bottom: 40px;
	text-align:center;
	line-height:1.6;
}
.about_message h3 span{
	font-size:.8em;
}
.about_message p{
}

.pc{ display:block;}
.sp{ display:none;}
@media screen and (max-width:770px){
	.midashi{
		font-size:6vw;
	}
	.midashi span{
		font-size:3vw;
	}
	.about_message{
		padding:50px 0 100px;
	}
	.about_message h3{
		font-size:5vw;
	}
	.pc{ display:none;}
	.sp{ display:block;}
}

/*--header-------------------------------------------------*/

header{
	width:100%;
	display:flex;
	align-items: center;
	justify-content:space-between;
	height:60px;
	padding: 5px;
	position: relative;
    z-index: 5;
	background:rgba(255,255,255,.8)
}
@media screen and (min-width:1081px){
	.fixed{
		position: fixed;
		top: 0;
		left: 0;
		border-radius:50px;
	}
}
header h1 a{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:0 20px;
}
header a{
	font-weight:bold;
}
header .pcnav{
	display:flex;
	justify-content:center;
	align-items: center;
	height: 100%;
}
header .pc_mainnav{
	display:flex;
}
header .pc_mainnav li{
	padding:0 7px;
}
header .pc_cnav{
	display:flex;
	justify-content:center;
	align-items: center;
	height: 100%;
	margin-left: 5px;
}
header .pc_cnav li{
	height:100%;
	display:flex;
	align-items:center;
	transition:.6s;
	margin: 5px 4px;
	border-radius: 50px;
}
header .pc_cnav li a{
	color:#fff;
	display:block;
	width:100%;
	height:100%;
	padding: 11px 20px 11px 40px;
}
header .pc_cnav li:hover{
	opacity:.7;
}
header .pc_cnav li:nth-child(1){
	background:#a09387;
	position:relative;
}
header .pc_cnav li:nth-child(1):before{
	content:"";
	position:absolute;
	background:url(img/common/icon_saiyou.png) center no-repeat;
	height:14px;
	width:14px;
	top:0;
	bottom:0;
	left:17px;
	margin:auto;
}
header .pc_cnav li:nth-child(2){
	background:#ec670f;
	position:relative;
}
header .pc_cnav li:nth-child(2):before{
	content:"";
	position:absolute;
	background:url(img/common/icon_mail.png) center no-repeat;
	height:12px;
	width:16px;
	top:0;
	bottom:0;
	left:16px;
	margin:auto;
}
nav.globalMenuSp .spcm{
	height: auto;
	flex-flow:column;
	margin:20px 0;
}
nav.globalMenuSp .spcm li{
	height:70px;
	border:none;
	margin:5px auto;
}
nav.globalMenuSp .spcm li a{
	text-align:center;
	color:#fff;
}
@media screen and (max-width:1080px){
	header h1 a{
		padding: 0 80px 0 15px;
	}
	header .pcnav{
		display:none;
	}
	header .hamburger{
		display:block;
	}
	header .inner{
		width:100%;
	}
}

/*--footer-------------------------------------------------*/
footer{
	/*overflow:hidden;*/
}
footer .f_contact{
	padding:100px 20px;
	position:relative;
}
footer .f_contact ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:50px auto 25px;
}
footer .f_contact ul li{
	width:50%;
	padding:50px;
}
footer .f_contact ul li a{
	font-size:1.8rem;
	color: #fff;
	width:100%;
	display: inline-block;
    text-align: center;
    font-weight: bold;
    padding: 15px 15px;
    border-radius: 50px;
    transition: color .3s, background .3s;
}
footer .f_contact ul li:nth-child(1) a{
	background: #ec670f;
    border: 1px solid #ec670f;
}
footer .f_contact ul li:nth-child(1) a:hover{
	background: none;
    color: #ec670f;
}
footer .f_contact ul li:nth-child(2) a{
	background: #a09387;
    border: 1px solid #a09387;
	position:relative;
}
footer .f_contact ul li:nth-child(2) a:hover{
	background: none;
    color: #a09387;
}
footer .f_contact ul li:nth-child(2) a:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 25px;
    background: url(img/common/icon_window.png) no-repeat;
    width: 16px;
    height: 16px;
}

footer .f_navarea{
	background: #f6f6f6;
	position:relative;
	margin:0 10px;
	border-radius:50px 50px 0 0;
}
footer .f_inner{
	max-width:1600px;
	margin:0 auto;
	padding:80px 5%;
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
footer .f_info{
	width:calc(30% - 45px);
}
footer .f_info ul{
	padding:20px 0;
}
footer .f_nav{
	width:calc(70% - 45px);
	display:flex;
	justify-content:space-between;
}
footer .f_nav ul li a{
	position:relative;
}
footer .f_nav ul li a:before{
	content:"";
	position:absolute;
	left:-15px;
	top:0;
	bottom:0;
	margin:auto;
	background:url(img/common/f_arrow.png) center no-repeat;
	width:8px;
	height:13px;
}
footer .f_nav .f_sns{
	width:90px;
}
footer .f_nav .f_sns li a:nth-child(2){
	padding-left:5px;
}
footer .f_nav .f_sns li a:before{
	content:none;
}
footer .f_nav .f_sns li a:hover{
	opacity:.7;
}
footer small{
	width:100%;
	text-align:center;
	display:block;
}
footer .f_illust{
	position:absolute;
	top:-40px;
	right:3%;
	max-width: 143px;
    height: auto;
    width: 50%;
}
@media screen and (max-width:1050px){
	footer .f_inner{
		flex-wrap:wrap;
	}
	footer .f_info,
	footer .f_nav{
		width:100%;
	}
	footer .f_info{
		display:flex;
		margin-bottom:25px;
		padding-bottom:25px;
		border-bottom: 1px solid #c8c8c8;
	}
	footer .f_info ul{
		padding:0 10%;
	}
	footer .f_nav{
		font-size:1.4rem;
	}
}
@media screen and (max-width:900px){
	footer .f_contact ul{
		flex-flow:column;
		margin:25px auto;
	}
	footer .f_contact ul li{
		width:100%;
		padding:15px 0;
		max-width:500px;
		margin:0 auto;
	}
}
@media screen and (max-width:680px){
	footer .f_inner{
		padding:50px 20px;
	}
	footer .f_info{
		flex-flow:column;
	}
	footer .f_info ul{
		padding:20px 0 0 0;
	}
	footer  .f_nav{
		padding:0 0 0 20px;
		flex-wrap:wrap;
	}
	footer .f_nav ul{
		width:100%;
		padding:10px 0;
	}
	footer .f_nav .f_sns{
		width:100%;
	}
}


/*--CONTACT-------------------------------------------------*/
#Contact{
    padding: 100px 20px;
}
#Contact .con_wrap{
	text-align:center;
}
#Contact .con_wrap a{
	color:#ec670f;
}
#Contact .con_wrap.inner_s{
	max-width:720px;
}
#Contact .con_wrap h2 {
    font-size: 3.2rem;
    font-weight: bold;
    padding: 50px 0 90px;
    text-align: center;
}
#Contact .con_tel{
	background:#f6f6f6;
	border-radius:8px;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	padding:40px 20px;
	margin:0 auto 50px;
}
#Contact .con_tel dt,
#Contact .con_tel dd{
	text-align:center;
	width:50%;
}
#Contact .con_tel dt{
	font-size:2.4rem;
	font-weight:bold;
}
#Contact .con_tel dd{
	position:relative;
	font-size:3rem;
	font-weight:bold;
	line-height: .8;
}
#Contact .con_tel dd:after{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	margin:auto;
	background:url(img/contact/phone.png) center no-repeat;
	width:45px;
	height:45px;
}
#Contact .con_tel dd span{
	font-size:1.4rem;
}

#Contact .con_tel.shiryou{
	margin:0 auto 100px;
}
#Contact .con_tel.shiryou dd:after{
	content:none;
}
#Contact .con_tel.shiryou .shiryou_btn{
	font-size:1.8rem;
	color:#fff;
	background:#ec670f;
	border:1px solid #ec670f;
	text-align:center;
	display:block;
	width:80%;
	padding:25px 20px;
	border-radius:50px;
	margin: 0 auto;
	transition:.3s;
}
#Contact .con_tel.shiryou .shiryou_btn:hover{
	color:#ec670f;
	background:none;
}

#Contact .con_mail{
	position:relative;
	text-align:center;
	margin-bottom:100px;
}
#Contact .con_mail h3{
	font-size:2.4rem;
	font-weight:bold;
}
#Contact .con_mail:after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:-50px;
	margin:auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 17px 10px 0 10px;
	border-color: #ec670f transparent transparent transparent;
}
#Contact table{
	width:100%;
	text-align:left;
}
#Contact table th,
#Contact table td{
	padding: 5px 0;
    background: none;
}
#Contact table th{
	width: 200px;
}
#Contact table td{
	width:calc(100% - 200px);
}
#Contact table input[type="text"],
#Contact table input[type="email"],
#Contact table input[type="url"],
#Contact table input[type="tel"],
#Contact table textarea {
    border: 1px solid #ccc;
    padding: 10px;
    margin-bottom: 0.5em;
    width: 100%;
	background:#f4fbfb;
	border-radius:5px;
}
#Contact table textarea{
	min-height:200px
}
#Contact .requied{
	font-size: 1.1rem;
	background:#ec670f;
    color: #fff;
    display: inline-block;
    padding: 2px 5px;
    border-radius: 2px;
    margin-left: 5px;
    line-height: 1.2;
}
#Contact input[type="submit"]{
	display: block;
    margin: 50px auto 100px;
    border-radius: 40px;
    max-width: 400px;
	width: 100%;
	height:70px;
    color: #fff;
    background: #ec670f;
    transition: background .3s;
	border:1px solid #ec670f;
    cursor: pointer;
	font-weight:bold;
}
#Contact input[type="submit"]:hover{
	background:#fff;
	color:#ec670f;
}

@media only screen and (max-width: 770px){
	#Contact{
		padding: 50px 20px 100px;
	}
	#Contact .con_wrap{
		text-align:left;
	}
	#Contact .con_tel{
		padding:30px 5%;
	}
	#Contact .con_tel dt,
	#Contact .con_tel dd {
		width: 100%;
		padding:10px 0;
	}
	#Contact .con_tel dd:after{
		top: -115px;
		bottom:auto;
		left: 0;
		right: 0;
		margin: auto;
	}
	#Contact table th,
	#Contact table td{
		width: 100%;
		display: block;
	}
	#Contact .con_wrap h2 {
		font-size: 2.2rem;
	}
}


/*--PRIVACY-------------------------------------------------*/

#Privacy{
	padding:100px 20px;
}
#Privacy .pr_wrap{
}
#Privacy .pr_wrap h2{
	font-size:3.2rem;
	font-weight:bold;
	padding:50px 0 90px;
	text-align:center;
}
#Privacy .pr_wrap ul{
	padding:75px 0 100px;
}
#Privacy .pr_wrap ul li{
}
#Privacy .pr_wrap ul li h3{
	font-size:2.4rem;
	color:#ec670f;
	font-weight:bold;
	border-bottom:1px solid;
	padding-bottom:3px;
	margin:50px 0 25px;
}
@media screen and (max-width:770px){
	#Privacy{
		padding: 100px 20px 100px;
	}
	#Privacy .pr_wrap h2{
		font-size:2.2rem;
	}
	#Privacy .pr_wrap ul li h3{
		font-size:2rem;
	}
	#Privacy .pr_wrap ul{
		padding:50px 0 50px;
	}
}


#News{
}
.news_contents {
    padding: 70px 0;
    min-height: 80vh;
}

.news_contents .news_wrap{
	display:flex;
	align-items:flex-start;
	flex-wrap:wrap;
	justify-content:space-between;
}
.news_contents .singlecontent,
.news_contents .newslistcontent{
	width:calc(100% - 400px)
}
.news_contents .singlecontent p{
	margin:15px 0;
	line-height:1.6
}
.news_contents .singlecontent p,
.news_contents .singlecontent img{
	margin:15px 0;
	line-height:1.6
}
.news_contents .singlecontent a{
	color:#ec670f;
}
.newslistcontent{
	margin-bottom:70px;
}
.news_contents .newstitle{
	font-size: 1.5em;
    margin: 0;
}
.news_contents .postinfo{
	margin:0 0 25px;
	border-left:2px solid #ec670f;
	padding-left: 20px;
}
.news_contents .postinfo li{
	padding:5px 0;
}
.news_contents .postinfo li:nth-child(1){
}
.news_contents .postinfo li h3{
	font-weight:bold;
	font-size:2rem;
	color:#333;
}
.news_contents .postinfo li:nth-child(3){
}
.news_contents .singlecontent .pagenav{
	margin:100px 0 0;
	padding:40px 0 90px;
	border-top:1px solid #acacac;
}

.news_contents .singlecontent .pagenav ul{
	display:flex;
	justify-content:space-between;
	margin:0 auto;
}
.news_contents .singlecontent .pagenav ul li{
	width:33.33%;
	text-align: center;
}
.news_contents .singlecontent .pagenav ul li a{
	color:#ec670f;
}
.news_contents .side {
      width: 300px;
}
.news_contents .sideBlock {
}
.news_contents .sideBlock:not(:first-child) {
	margin:50px 0 0 0;
}
.news_contents .sideBlock .blockTit{
	font-weight:bold;
	margin:0 0 15px 0;
	padding:5px 20px;
	background:#a09387;
	color:#fff;
	border-radius:30px;
}
.news_contents .sideBlock ul li a{
	display:block;
	width:100%;
	padding:10px 10px 10px 25px;
	position:relative;
	border-bottom: 1px solid #c8c8c8;
}
.news_contents .sideBlock ul li a:before{
	content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 9px;
    height: 9px;
    border-top: 2px solid #ec670f;
    border-right: 2px solid #ec670f;
    transform: rotate(45deg);
}

.news_contents .sideBlock .itemSelect {
    border:1px solid #C9C6C6
}
.news_contents .sideBlock .itemSelect select {
    font-family: inherit;
    font-size: inherit;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
	background: none;
    border: none;
	padding:15px;
	text-align:center;
}
.news_contents .sideBlock .itemSelect select option{
	color:#000;
}
.newslist{
	margin: 24px 0;
}
.newslist li{
	border-bottom:1px solid #c8c8c8;
	padding: 20px 0;
}
.newslist li a{
	font-size:2rem;
	font-weight:bold;
	padding: 5px 0;
    display: inline-block;
}
.date{
	font-size:1.4rem;
	width:80px;
	margin:0;
}
.cat{
	background: #ec670f;
    padding: 5px 10px;
    width: 125px;
    text-align: center;
    color: #fff;
    margin: 0 20px 0 15px !important;
    font-size: 1.2rem;
	border-radius:20px;
}
.ichiran{
	text-align:right;
}
/*ページナビ*/
.wp-pagenavi{
	text-align:center;
}
.wp-pagenavi span,
.wp-pagenavi a{
}
.wp-pagenavi .page-numbers{
	width: 25px;
    height: 25px;
    padding: 0;
    line-height: 2.5rem;
	text-align: center;
    margin: 0 5px;
}
.wp-pagenavi .page-numbers.current{
	background: #ec670f;
    color: #fff;
    display: inline-block;
}
@media screen and (max-width:770px){
	.news_contents .singlecontent,
	.news_contents .newslistcontent{
		width:100%
	}
	.news_contents .side {
		  width: 100%;
		  margin: 55px 0 100px 0;
	}
	.newslist li a{
		width:100%;
		margin:24px 0 0 0;
	}
	.wp-pagenavi{
		text-align:left;
	}
}


/*--#404-------------------------------------------------*/
#Four04{
	height: 70vh;
	padding: 100px 20px;
	text-align: center;
}
#Four04 .inner_s{
	height:100%;
}
#Four04 ul{
	height:100%;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	flex-flow:column;
}
#Four04 ul li:nth-child(1){
	font-size:7rem;
	font-weight:bold;
	color:#eee;
}


/*--#TOP-------------------------------------------------*/
#Mv{
	position:relative;
	z-index: 1;
}
#Mv .slider_mv{
	position:relative;
	overflow:visible;
	width:85%;
	margin:0 auto;
}
#Mv .slider_mv:after{
	content:"";
	position:absolute;
	width:273px;
	height:240px;
	background:url(img)
}
#Mv .slider_mv p{
	position:absolute;
	right:-25px;
	top:0;
	bottom:0;
	margin:auto;
	font-size:1.2rem;
	writing-mode: vertical-rl;
	text-align: center;
	color:#ec670f;
	letter-spacing: .25rem;
}
#Mv .slider_mv .swiper-container{
	margin-right:0;
}
#Mv .slider_mv .swiper-slide{
	height:85vh;
	border-radius:100px;
	overflow:hidden;
}

#Mv .slider_mv .swiper-slide p{
	height:100%;
	width:100%;
	background-size:cover !important;
	background-position:center !important;
	right:auto;
	left:auto;
}
#Mv .swiper-slide-active p,
#Mv .swiper-slide-duplicate-active p,
#Mv .swiper-slide-prev p{
  animation: zoomUp 5.5s linear forwards;  
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.03);
  }
}


#Mv .mvtxt{
	position:absolute;
	left:3%;
	bottom:-80px;
	z-index:2;
}
#Mv .mvtxt a:hover{
	opacity:.7;
}
#Mv .mvtxt ul{
	padding:30px 60px;
	margin-bottom:10px;
	background:#ec670f;
	border-radius:30px 30px 30px 0;
}
#Mv .mvtxt ul li{
	padding:5px 0;
	color:#fff;
	font-weight:bold;
	line-height:1.6;
}
#Mv .mvtxt ul li:nth-child(1){
	font-size:1.8rem;
}
#Mv .mvtxt ul li:nth-child(2){
	font-size:3.4rem;
}
#Mv .mvtxt .sns a:nth-child(2){
	padding-left:5px;
}

#Mv .swiper-pagination{
	bottom:-30px;
}
#Mv .swiper-button-next,
#Mv .swiper-button-prev{
	color:#fff !important;
}
#Mv .swiper-pagination-bullet-active{
	background:#ec670f !important;
}
#Mv .swiper-button-next,
#Mv .swiper-button-prev{
}

@media screen and (max-width:770px){
	#Mv .slider_mv .swiper-slide{
		height:50vh;
		border-radius:50px;
	}
	#Mv .mvtxt{
		width:auto;
		height:30vh;
		bottom:-150px;
	}
	#Mv .mvtxt ul{
		padding:20px 30px;
	}
	#Mv .mvtxt ul li:nth-child(2){
		font-size:5vw;
	}
	#Mv .slider_mv p{
		font-size:1.1rem;
		right:-20px;
	}
	#Mv .swiper-pagination{
		text-align:right;
	}
	.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{
		margin: 0 1px !important;
	}
}

.top_message{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-flow:column;
	text-align:center;
	font-weight:bold;
	overflow:hidden;
	padding:150px 20px;
}

.top_message:before {
    content: "";
    height: 80vh;
    width: 80vh;
    background: #fff5f0;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    border-radius: 50%;
    z-index: -1;
    left: 0;
    margin: auto;
    animation: morph 40s ease-in-out infinite both alternate;
}

@keyframes morph {
	0% {border-radius: 40% 60% 60% 40% / 60% 30% 70% 40%;
		transform:rotate(0);
	} 
	100% {border-radius: 40% 60%;
		transform:rotate(360deg);
	} 
}

.top_message h2{
	font-weight:bold;
	margin-bottom:30px;
}
.top_message p{
	line-height:2.5;
	font-size:1.8rem;
}
.top_message .intro{
	color:#ec670f;
	margin-bottom:50px;
}

.top_message .illust01{
	position:absolute;
	right:3%;
	bottom:0;
	max-width:196px;
	height:auto;
	width:30%;
}
.top_message .btn_next{
	margin:50px 0 0;
}


@media screen and (max-width:770px){
	.top_message{
		padding: 115px 20px 100px;
	}
	.top_message h2{
		font-size:5vw
	}
	.top_message p{
		font-size:4vw;
		text-align:left;
	}
}


#Topnews{
	background:#f6f6f6;
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	position:relative;
}
#Topnews .t_title{
	background:#ec670f;
	display: flex;
    align-items: center;
    justify-content: center;
	width: 20%;
	border-radius:0 30px 0 0;
}
#Topnews .t_title .midashi,
#Topnews .t_title .midashi span{
	color:#fff;
}
#Topnews .t_title div{
	display:flex;
	align-items:center;
	justify-content:center;
}

#Topnews .newswrap{
	width:60%;
	padding:100px 2% 100px 5%;
}
#Topnews dl{
	display:flex;
	flex-wrap:wrap;
	border-bottom:1px solid #c8c8c8;
	padding:8px 0;
}
#Topnews dt{
	width:240px;
	color: #ec670f;
	display:flex;
	flex-wrap:wrap;
}
#Topnews dt .n_date{
	display:inline-block;
	width: 130px;
}
#Topnews dt .n_cat{
	background:#ec670f;
	font-size:1.2rem;
	color:#fff;
	text-align:center;
	height: 25px;
	line-height:2.6rem;
	border-radius:20px;
	display:inline-block;
	width: 95px;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#Topnews dt .n_cat a{
	color:#fff;
}
#Topnews dd{
	width:calc(100% - 240px);
}
#Topnews .n_btnarea{
	width:20%;
	display:flex;
	align-items:center;
	justify-content:center;
}
#Topnews .btn_next{
}

@media screen and (max-width:1080px){
	#Topnews{
		padding:50px 0 100px;
	}
	#Topnews .t_title,
	#Topnews .newswrap,
	#Topnews .n_btnarea{
		width:100%;
	}
	#Topnews .newswrap{
		padding:50px 5%;
	}
	#Topnews .t_title{
		background:none;
	}
	#Topnews .t_title .midashi{
		color:#333;
	}
	#Topnews .t_title .midashi span{
		color: #ec670f;
	}
}
@media screen and (max-width:770px){
	#Topnews dt,
	#Topnews dd{
		width:100%;
	}
}


#Top_policy{
	position:relative;
	margin:50px auto 100px;
	overflow:hidden;
}
#Top_policy .poli_cont{
	margin:100px auto 0;
}
#Top_policy .poli_each{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	padding:50px 20px 0;
}
#Top_policy .poli_cont ul:last-child{
	padding:0 20px 50px;
}
#Top_policy .poli_each .poli_img,
#Top_policy .poli_each .poli_txt{
	width:50%;
}
#Top_policy .poli_each .poli_img{
	text-align:center;
}
#Top_policy .poli_each .aos-animate img{
	animation:kakukaku1 1s;
}
#Top_policy .poli_each .poli_img img{
	border-radius:40px;
}
#Top_policy .poli_each .poli_txt h4{
	position:relative;
	font-size:2.6rem;
	color:#ec670f;
	font-weight:bold;
    display:inline-block
}
#Top_policy .poli_each .poli_txt h4:after{
	content:"";
	position:absolute;
	right:-15px;
	top:-5px;
	background:url(img/common/kazari.png) center no-repeat;
	width:15px;
	height:15px;
}
#Top_policy .poli_each .poli_txt p{
	border-top:1px solid #c8c8c8;
	margin-top:13px;
	padding-top:20px;
}
#Top_policy ul{
	position:relative;
}
#Top_policy ul li{
	position:relative;
	flex-direction: row-reverse;
}
#Top_policy ul:before{
	content: "";
    position: absolute;
    background: #f6f6f6;
    width: 100%;
    height: 100%;
    z-index: -1;
    left: 20%;
    border-radius: 50px 0 0 50px;
}
#Top_policy ul li .poli_txt{
	position:relative;
	padding:50px 40px 40px 0;
}
#Top_policy ul li .poli_txt .btn_next{
	position:absolute;
	right:40px;
	bottom:0;
}

#Top_policy .illust02{
	position:absolute;
	left:20px;
	top:20px;
	max-width: 211px;
	height:auto;
    width: 40%;
}

@media screen and (max-width:900px){
	#Top_policy{
		margin:50px auto 0;
	}
	#Top_policy .poli_cont{
		margin:50px auto;
	}
	#Top_policy .poli_each{
		flex-flow:column;
		padding: 50px 0;
	}
	#Top_policy ul li{
		flex-direction: column;	
		padding:20px 20px 40px
	}
	#Top_policy .poli_each .poli_img,
	#Top_policy .poli_each .poli_txt{
		width:100%;
	}
	#Top_policy ul li .poli_txt{
		padding:25px 0
	}
	#Top_policy ul li .poli_txt .btn_next{
		right: 0;
    	bottom: -45px;
	}
}

#Top_ennai{
	position:relative;
}
#Top_ennai:before {
    content: "";
    position: absolute;
    background: #f6f6f6;
    width: 100%;
    height: 100%;
    z-index: -1;
    right: 20%;
    border-radius:0 50px 50px 0;
}
#Top_ennai .midashi{
	padding:100px 0;
}
#Top_ennai .sl_wrap{
	display: flex;
	flex-wrap:wrap;
	align-items:flex-start;
	justify-content:space-between;
	padding:0 0 50px 0;
}
#Top_ennai .sl_wrap dl{
	width:40%;
	padding-bottom:25px;
}
#Top_ennai .sl_wrap dt{
	font-size: 2.6rem;
    color: #ec670f;
    font-weight: bold;
    display: inline-block;
}
#Top_ennai .sl_wrap dd{
}
#Top_ennai .sl_wrap .swiper-container{
	width:60%;
	padding: 0 0 20px 0;
	position: relative;
	z-index: 1;
}
#Top_ennai .swiper-wrapper{
}
#Top_ennai .swiper-slide{
	position:relative;
}
#Top_ennai .swiper-slide img{
	border-radius:20px;
}
#Top_ennai .swiper-slide p{
	position:absolute;
	background:rgba(255,255,255,.8);
	bottom: 12px;
    left: 0;
    right: 0;
    margin: auto;
    width: 95%;
	padding:0 10px;
	font-size:1.3rem;
	border-radius:20px;
}
#Top_ennai .swiper-pagination{
	bottom:-5px;
}
#Top_ennai .swiper-button-next,
#Top_ennai .swiper-button-prev{
	color:#fff !important;
}
#Top_ennai .swiper-pagination-bullet-active{
	background:#ec670f !important;
}
#Top_ennai .swiper-button-next,
#Top_ennai .swiper-button-prev{
}
#Top_ennai .com_wrap{
	display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding: 15px 0 100px 0;
}
#Top_ennai .com_txt,
#Top_ennai .com_img{
	width:50%;
}
#Top_ennai .com_txt{
	padding:0 3% 0 0;
}
#Top_ennai .com_txt dt{
	font-size: 2.6rem;
    color: #ec670f;
    font-weight: bold;
    display: inline-block;
}
#Top_ennai .com_img{
	text-align:right;
}
#Top_ennai .com_btn{
	text-align:right;
	margin-top:30px;
}
#Top_ennai .com_btn .btn_next{
	display: inline-block;
	width:220px;
}

@media screen and (max-width:900px){
	#Top_ennai .midashi{
		padding:70px 0 50px;
	}
	#Top_ennai .sl_wrap dl,
	#Top_ennai .sl_wrap .swiper-container,
	#Top_ennai .com_txt,
	#Top_ennai .com_img{
		width:100%;
	}
	#Top_ennai .sl_wrap{
		padding:0 0 25px 0;
	}
	#Top_ennai .com_wrap{
		padding: 15px 0 50px 0;
	}
	#Top_ennai .com_txt{
		padding:0 0 50px 0;
	}
	#Top_ennai .com_txt dt{
		font-size:2rem;
		padding-bottom:10px;
	}
}

/*--Sv-------------------------------------------------*/
#Sv{
}
#Sv .svwrap{
	position: relative;
    width: 85%;
	margin:0 auto;
	height: 65vh;
    border-radius: 100px 100px 100px 0;
	overflow:hidden;
}
#Sv .svwrap:before{
    content:"";
	position:absolute;
	top:0;
	left:0;
    width:100%;
    height:100%;
    background:#f6f6f6;
	z-index:-1
}
#Sv .svtxt{
	position:absolute;
	bottom:0;
	left:0;
	background:#ec670f;
	width: 300px;
    text-align: center;
	border-radius:0 30px 0 0;
}
#Sv .svtxt h2{
	font-size:2.8rem;
	line-height:1.6;
	font-weight:bold;
	color:#fff;
	padding:20px 5%;
}

@media screen and (max-width:770px){
	#Sv .svwrap{
		height:50vh;
		border-radius: 50px;
	}
}


/*--Con_sv-------------------------------------------------*/
#Con_sv{
}
#Con_sv .svwrap{
	padding-left: 400px;
    position: relative;
}
#Con_sv .svtxt{
	display: flex;
    align-items: flex-start;
	justify-content:center;
	flex-flow:column;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    height: 200px;
    margin: auto;
    background: rgba(255,255,255,.8);
    border-radius: 30px;
    z-index: 1;
	max-width:400px;
	padding:0 50px;
	letter-spacing:.6rem;
}
#Con_sv .sv-wrapper{
	height:50vh;
	width:100%;
	border-radius: 100px 0 0 100px;
}
#Con_sv .svsakura{
	position:absolute;
	left:3%;
	bottom:-80px;
	z-index:2;
	max-width: 219px;
    height: auto;
    width: 30%;
}
#Con_sv .svtxt h2{
	font-size:3.2rem;
	font-weight:bold;
}
#Con_sv .svtxt p{
	font-size:2rem;
	font-weight:bold;
}
#Con_sv .svtxt p span{
	color:#ec79ac;
}
@media screen and (max-width:770px){
	#Con_sv .svwrap {
		padding-left: 20%;
	}
	#Con_sv .sv-wrapper {
		border-radius: 50px 0 0 50px;
	}
	#Con_sv .svtxt h2{
		font-size:2.2rem;
	}
	#Con_sv .svtxt p{
		font-size:1.6rem;
	}
}

/*--ABOUT-------------------------------------------------*/

#About{
	overflow:hidden;
}
#About #About_ten{
	position:relative;
	padding:100px 0;
	margin: 100px auto 50px;
}
#About #About_ten:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 3%;
    background: #f6f6f6;
    border-radius: 100px 0 0 100px;
    z-index: -2;
}
#About .ten_wrap{
}
#About .ten_wrap h3{
	font-size:3rem;
	font-weight:bold;
	padding-bottom:30px;
	margin-bottom:20px;
	background-image:
	linear-gradient(135deg,transparent 30%,#ec670f 50%,transparent 70%),
	linear-gradient(225deg,transparent 30%,#ec670f 50%,transparent 70%);
	background-size: 16px 8px;
	background-position: 0px 80%,8px 80%;
	background-repeat: repeat-x;
	display:inline-block;
	letter-spacing:0;
}
#About .ten_each{
	position:relative;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	padding:50px 0;
}
#About .ten_each:nth-child(even){
	flex-direction:row-reverse;
}
#About .ten_each:nth-child(even) .ten_txt{
	padding:0 3% 0 0;
}
#About .ten_each:nth-child(odd) .ten_txt{
	padding:0 0 0 3%;
}

#About .ten_img,
#About .ten_txt{
	width:50%;
}
#About .ten_img{
	position:relative;
	text-align:center;
	padding-bottom:25px;
}
#About .ten_img img{
	border-radius:30px;
}
#About .ten_wrap ul{
	counter-reset: number 0; 
}
#About .ten_img:after{
	position:absolute;
	left:3%;
	top:-35px;
	width:70px;
	height:70px;
	border-radius:50%;
	background:#ec670f;
	color:#fff;
	counter-increment: number 1;
	content: counter(number) " ";
	font-size:4rem;
	line-height: 7rem;
}
#About .ten_img:before{
	content:"";
	position:absolute;
	z-index:0;
	top:-30px;
	left:4%;
	width:70px;
	height:70px;
	border-radius:100%;
    background-image:
	 repeating-linear-gradient(-45deg,#ec670f, #ec670f 4px,transparent 0, transparent 8px);
}
#About .ten_txt{
}
#About .ten_txt h4{
	font-size:2.6rem;
	font-weight:bold;
	color:#ec670f;
	line-height:1.6;
	margin-bottom:25px;
}
#About .ten_txt h4 span{
	font-size:.8em;
}
#About .illust01{
	position: absolute;
    right: 3%;
    top: -50px;
    max-width: 172px;
    height: auto;
    width: 40%;
	
}

#About #Class{
	position:relative;
}
#About #Class:before {
    content: "";
    position: absolute;
    background: #ffe2cf;
    width: 100%;
    height: 100%;
    z-index: -1;
    left: 20%;
    border-radius: 50px 0 0 50px;
}
#About #Class .inner{
	padding:100px 20px;
}
#About #Class ul{
	padding:0 0 25px 0;
}
#About #Class ul li{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	flex-wrap:wrap;
}

#About #Class ul li .why_txt{
	padding:0 3% 0 0;
	width:55%;
}
#About #Class ul li .why_txt h4{
    font-size: 2.6rem;
    font-weight: bold;
	color:#ec670f;
    line-height: 1.6;
    margin-bottom: 25px;
	position: relative;
}
#About #Class ul li .why_txt h4:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -100px;
    left: -15%;
    width: 100px;
    height: 100px;
    border-radius: 100%;
	background-image: radial-gradient(#ec670f 30%, transparent 30%);
    background-size: 20px 20px;
}
#About #Class ul li .why_txt h4 span{
	font-size: .8em;
}

#About #Class .why_txt ul{
	padding: 10px 20px;
	border: 1px solid #ec670f;
	background: #fff;
	border-radius: 10px;
	margin: 25px 0;
}
#About #Class .why_txt ul li {
    list-style-type: none;
    position: relative;
    padding-left: 1.5rem;
    line-height: 1.5;
    margin: 10px 0;
}
#About #Class .why_txt ul li:before {
    border-radius: 50%;
    width: 5px;
    height: 5px;
    display: block;
    position: absolute;
    left: 0;
    top: 1rem;
    content: "";
    background: #ec670f;
}

#About #Class ul li .why_img{
	text-align:center;
	width:45%;
}
#About #Class ul li .why_img img{
	border-radius:30px;
}
#About #Class dl{
	background:#fff;
	padding:20px 3%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:25px 0;
	border-radius: 20px;
}
#About #Class dl dt{
	background:#ec670f;
	border-radius:20px 20px 0 20px;
	width:270px;
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	align-items:center;
	padding:20px;
	color:#fff;
}
#About #Class dl dt h5{
	font-size:2.6rem;
	text-align:center;
	color:#fff;
}
#About #Class dl dd{
	width:calc(100% - 270px);
	padding:25px 0 25px 3%
}

#About #Class .nayami p{
	font-weight:bold;
	font-size:1.6rem;
}
#About #Class .merit{
}
#About #Class .merit h4{
	font-size: 2.2rem;
    font-weight: bold;
    line-height: 1.6;
}
#About #Class .merit

#About #Class .merit ul{
}
#About #Class .merit li{
}

#About #Class .merit dl dd ul li{
	padding-left: 4rem;
    text-indent: -5rem;
}

#About #Class .m_contact{
	margin-top:50px;
	text-align:center;
	max-width:670px;
	margin:100px auto 0;
}
#About #Class .m_contact ul{
	display:flex;
	justify-content: center;
	align-items:center;
	flex-wrap:wrap;
    margin: 50px 0 0;
}
#About #Class .m_contact ul li{
	width:50%;
	text-align: center;
	display: block;
}

#About #Class .m_contact h4{
}
#About #Class .m_contact p{
	font-size: 3rem;
    font-weight: bold;
    line-height: 0;
}
#About #Class .m_contact p img{
	vertical-align:middle;
}

#About #Class .m_contact .btn_next{
	padding: 20px;
    border-radius: 50px;
	margin-top:25px;
}


#About #Gaiyou{
	position:relative;
	margin-top:100px;
}
#About #Gaiyou:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 3%;
    background: #f6f6f6;
    border-radius:0 100px 100px 0;
    z-index: -2;
}
#About #Gaiyou .inner_s{
	max-width:800px;
	padding:0 20px;
}
#About #Gaiyou .midashi{
	padding:100px 0 80px;
}
#About #Gaiyou .ov_list{
}
#About #Gaiyou .ov_list dl{
	display:flex;
	flex-wrap:wrap;
	border-bottom:1px dashed #ec670f;
	padding:8px 0;
}
#About #Gaiyou .ov_list dt{
	width:30%;
	margin-right:5%;
	color:#ec670f;
	font-weight:bold;
}
#About #Gaiyou .ov_list dd{
	width: 65%;
}
#About #Gaiyou .ov_list dd a{
	color:#ec670f;
	position: relative;
}
#About #Gaiyou .ov_list dd a:after {
    content: "";
    position: absolute;
    right: -20px;
    top: 0;
    bottom: 0;
    margin: auto;
    background: url(img/common/s_window.png) center no-repeat;
    width: 12px;
    height: 12px;
}
#About #Gaiyou .map{
	position:relative;
	padding:50px 0 100px;
}
#About #Gaiyou .map:after{
	content:"";
	position:absolute;
	top:20px;
	right:20px;
	background:url(img/about/map.png) center no-repeat;
	width:50px;
	height:50px;
	transform:rotate(15deg);
}



@media screen and (max-width:900px){
	#About #About_ten{
		padding:100px 0 50px;
	}
	#About .ten_wrap{
		padding:0 20px 0 25px;
	}
	#About .ten_img, #About .ten_txt {
		width: 100%;
	}
	#About .ten_txt h4{
		font-size:1.8rem;
	}
	#About .ten_each:nth-child(even) .ten_txt{
		padding:0;
	}
	#About #Class ul li .why_txt{
		padding:0 0 25px 0;
	}
	#About #Class ul li .why_txt,
	#About #Class ul li .why_img{
		width:100%;
	}
	#About #Class dl dt,
	#About #Class dl dd{
		width:100%;
	}
	#About #Class dl{
		padding:10px
	}
	#About #Class dl dt{
		border-radius:15px 15px 15px 0;
	}
	#About #Class dl dd{
		padding:25px 0;
	}
	
	#About #Gaiyou .inner_s{
		padding: 0 25px 0 20px;
	}
	#About #Gaiyou .ov_list dt,
	#About #Gaiyou .ov_list dd{
		width:100%;
	}
	
	#About #Class .m_contact ul{
		justify-content:center;
		margin: 25px 0 0
	}
	#About #Class .m_contact ul li{
		width:300px;
		margin:25px 0;
	}
}


/*--SERVICE-------------------------------------------------*/
#Service{
	overflow:hidden;
}
#Service .about_message{
	padding:150px 0 100px;
}
#Service #Ichiji_azukari{
}
#Service .ichji_detail{
	position:relative;
}
#Service .ichji_detail:before {
	content: "";
    position: absolute;
    background: #f6f6f6;
    width: 100%;
    height: 100%;
    z-index: -1;
    left: 20%;
    border-radius: 50px 0 0 50px;
}
#Service .ichji_detail .inner{
	padding:50px 20px;
}
#Service .ichiji_each{
	position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 50px 0;
}
#Service .ichiji_img,
#Service .ichiji_txt{
	width:50%;
}
#Service .ichiji_each .ichiji_txt {
    padding: 0 2% 0 0;
}
#Service .ichiji_img{
	text-align:center;
	padding-bottom: 25px;
}
#Service .ichiji_img img{
	border-radius:30px;
}
#Service .ichiji_txt h4{
	font-size:3rem;
	font-weight:bold;
	color:#ec670f;
	margin:0 0 20px 0;
	position: relative;
}
#Service .ichiji_txt h4:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -100px;
    left: -15%;
    width: 100px;
    height: 100px;
    border-radius: 100%;
	background-image: radial-gradient(#ec670f 30%, transparent 30%);
    background-size: 20px 20px;
}
#Service .ichiji_txt dl{
}
#Service .ichiji_txt dt{
	font-weight:bold;
	font-size:1.8rem;
}
#Service .ichiji_txt dd{
	margin-bottom:20px;
}

#Service .ichiran_list{
}
#Service .ichiran_list.inner_s{
	max-width:800px;
	padding:0 20px 100px;
}
#Service .ichiran_list dl{
	display:flex;
	flex-wrap:wrap;
	border-bottom:1px dashed #ec670f;
	padding:8px 0;
}
#Service .ichiran_list dl:last-child{
	border:none;
}
#Service .ichiran_list dt{
	width:25%;
	margin-right:3%;
	color:#ec670f;
	font-weight:bold;
}
#Service .ichiran_list dd{
	width:70%
}
#Service .ichiran_list dd li{
	list-style:disc;
	margin-left:20px;
}

#Service .ko_wrap{
	display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding: 200px 20px 0;
	margin-top:-100px
}
#Service .ko_txt,
#Service .ko_img{
	width:50%;
}
#Service .ko_txt{
	padding:0 3% 0 0;
}
#Service .ko_txt dt h3{
	font-size: 2.6rem;
	line-height:1.6;
    font-weight: bold;
    display: inline-block;
	padding-bottom:15px;
}
#Service .ko_img{
	text-align:right;
}
#Service .ko_img img{
	border-radius: 30px;
}
#Service .ko_btn{
    margin-top: 30px;
    display: flex;
    flex-flow: column;
    align-items: flex-end;
}
#Service .ko_btn .btn_next{
	display: inline-block;
	width:220px;
	margin-bottom:20px;
}
#Service .ko_btn .btn_next:nth-child(2){
	background:#a09387;
	border:1px solid #a09387;
}
#Service .ko_btn .btn_next:hover:nth-child(2){
	color:#a09387;
	background:none;
}

@media screen and (max-width:900px){
	#Service .about_message{
		padding: 50px 0;
	}
	#Service .ichji_detail .inner{
		padding:50px 20px 0;
	}
	#Service .ichiji_each{
		padding:0 0 50px;
	}
	#Service .ichiji_each .ichiji_img,
	#Service .ichiji_each .ichiji_txt {
		width: 100%;
	}
	#Service .ichiji_txt h4{
		font-size:2rem;
	}
	#Service .ichiji_each .ichiji_txt{
		padding:0 0 50px 0;
	}
	#Service .ichiran_list dt,
	#Service .ichiran_list dd{
		width:100%;
	}
	#Service .ko_wrap{
		flex-direction:row-reverse;
	}
	#Service .ko_txt,
	#Service .ko_img{
		width:100%;
	}
	#Service .ko_txt{
		padding:0 0 50px 0;
	}
	#Service .ko_txt dt h3{
		font-size:2rem;
		padding-bottom:10px;
	}
	#Service .ko_btn{
		align-items:center;
	}
}

.grecaptcha-badge{
	display: none !important;
}

.m_con_p2{
	font-size:1.8rem !important;
	margin-bottom:20px;
	line-height:1.5 !important;
}

#About #Class .m_contact p span {
    font-size: 1.4rem;
}

@media screen and (max-width:900px){
	.m_con_p2{
		line-height:1.5 !important;
	}
}

.wp-block-button__link{
	color: #fff !important;
}
.wp-block-file__button{
	background: #ec670f !important;
    color: #fff !important;
	padding: 0px 15px;
    border-radius: 20px;
    display: inline-block;
}