@charset "UTF-8";
img{
max-width: 100%;
height: auto;
width /***/:auto;
}
@media screen and (min-device-width: 1000px) {
	header,
	.wrap{
		min-width: 1000px;
	}
}
/*-----------------------------------------------
__Header
-----------------------------------------------*/
header{
	width: 100%;
	position: fixed;
	height: 100px !important;
	z-index: 99;
	top: 0;
	left: 0;
}

header h1,
header #logo{
	float:left;
	clear:none;
	width: 190px;
	margin-top: 25px;
	margin-left: 2%;
	text-align: center;
}
header h1 img,
header #logo img{
	display: block;
	margin: 0 auto;
}
header h1 img:nth-child(1),
header #logo img:nth-child(1){
	margin-bottom: 8px;
}
header nav{
	width: 70%;
	max-width: 950px;
	float: right;
	margin-top: 30px;
	margin-right: 2%;
}

.midnightHeader.default #gl_nv a{
  color: #555;
}
.midnightHeader.default #gl_nv > li.contact a{
	border: 2px solid #555;
}

.midnightHeader.white #gl_nv a{
  color: #555;
}
.midnightHeader.white #gl_nv > li.contact a{
	border: 2px solid #555;
}

.midnightHeader.default .midnightInner,
.midnightHeader.white .midnightInner{
	background: #fff;
	transition: all ease .3s;
}

.midnightHeader.dark .midnightInner{
	background: none;
}
.midnightHeader.dark #gl_nv a{
  color: #fff;
}
.midnightHeader.dark#gl_nv > li.contact a{
	border: 2px solid #fff;
}
.midnightHeader.dark #logo img:nth-child(2){
	filter: invert(100%);
	-webkit-filter: invert(100%);
}

/*-----------------------------------------------
__Global Navi
-----------------------------------------------*/
.hide {
  opacity: 0 !important;
  visibility: hidden;
  overflow: hidden;
}

#gl_nv{
	width: 100%;
	display:table;
	table-layout: fixed;
	clear:right;
	text-align:center;
}
#gl_nv > li{
	display:table-cell;
	position: relative;
	transition: all ease .3s;
}
#gl_nv > li:nth-child(4){
	width: 26%;
}

#gl_nv a{
	color:#fff;
	position: relative;
	transition: all ease .3s;
	display: block;
	font-size: 85%;
	font-weight: bold;
}
#gl_nv > li > a em{
	display: block;
	font-size: 115%;
}

#gl_nv > li > a{
	box-sizing: border-box;
	padding: 5px 0;
	transition: all ease .3s;
}
#gl_nv > li > a:hover{
	color: #ff742f !important;
}

#gl_nv > li a::before{
	content: "";
	position: absolute;
	left: 8px;
	top: 13px;
	width: 18px;
	height: 18px;
	background: #ff742f;
	border: 2px solid #ff742f;
	border-radius: 100%;
	transition: all ease .3s;
	transform: scale(0.25);
}
#gl_nv > li a::after{
	content: "";
	position: absolute;
	left: 14px;
	top: 50%;
    width: 5px;
    height: 5px;
    border-top: 2px solid #ff742f;
    border-right: 2px solid #ff742f;
    -webkit-transform: rotate(45deg) translate(-50%,-50%);
    transform: rotate(45deg) translate(-50%,-50%);
	transition: all ease .3s;
	opacity: 0;
}
#gl_nv > li a:hover::before{
    transform: scale(1.2);
	background: none;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
#gl_nv > li a:hover::after{
	opacity: 1;
}

#gl_nv > li.contact a{
	border: 2px solid #fff;
	border-radius: 30px;
	padding-left: 10px;
}
#gl_nv > li.contact a:hover{
	background: #ff742f;
	border-color: #ff742f !important;
	color: #fff !important;
}
#gl_nv > li.contact  a:hover::before{
	background: #fff;
}

/*スマホ用ナビボタン*/
#toggle {
    display: none;
  }
  .toggleWrap {
    background: none;
    height: auto;
    position: static;
    padding: 0;
    margin-bottom: 20px;
  }
  .mainNav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 670px;
    margin: 0 auto;
  }
  .navItem {
    padding: 5px 15px;
  }
  .navItem:hover {
    border-color: #3696da;
  }
  .animation {
  -webkit-transition: none;
          transition: none;
  }


/*-----------------------------------------------
__Main
-----------------------------------------------*/
#u_img{
	width:100%;
	height: 350px;
	margin: 0 auto;
	position: relative;
}
#u_img img{
	width: 100%;
	height: 350px;
	display: block
}
#u_img h1{
	font-size: 2.2em;
	margin-bottom: 15px;
	width: 94%;
	position: absolute;
	z-index: 10;
	left: 3%;
	bottom: 10%;
	text-align: center;
	box-sizing: border-box;
	animation: fadeIn 1s ease 0s 1 normal;
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
	font-weight: normal;
	color: #ff742f;
}
#u_img h1::after{
	content: "";
	height: 40px;
	width: 1px;
	background: #fff;
	position: absolute;
	bottom: -50px;
	left: 50%;
	transform: translateX(-50%);
}
#u_img h1 em{
	display: block;
	font-weight: bold;
	font-size: 0.45em;
	color: #fff;
	letter-spacing: 0.15em;
}
#u_img ul{
	position: absolute;
	left: 0;
	bottom: -25px;
	z-index: 11;
	background:#facd89;
	box-sizing: border-box;
	padding: 15px 25px;
	display: flex;
	width: 30%;
	color: #555;
	font-size: 90%;
}
#u_img ul > li a{
	color: #555;
	vertical-align: middle;
	margin-right: 15px;
	white-space: nowrap;
}
#u_img ul > li a::after{
	content: "";
	display: inline-block;
	width: 6px;
    height: 6px;
    border-top: 2px solid #555;
    border-right: 2px solid #555;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	margin-left: 15px;
}
#u_img ul > li a:hover{
	text-decoration: underline;
}
#u_img ul > li:last-of-type{
	width: 70%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
#u_img::before{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	background: rgba(124,68,34,0.3);
}
#u_img::after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background: url(../common_images/bg_top_img.png) repeat;
}
html.adviser #u_img::after{
	display:none;
}


#main {
	padding:40px 0 80px 0;
}
h2{
	margin-top:3em;
	margin-bottom:2em;
	text-align: center;
	letter-spacing: 0.1em;
}
h2 em{
	display: block;
	font-family: 'Spinnaker', sans-serif;
	color: #ff742f;
	font-size: 2.2em;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 1.2
}

h3{
	margin-top:3em;
	margin-bottom:1em;
	position: relative;
}
h3 > span{
	display: inline-block;
	background: #fff;
	font-weight: normal;
	font-size: 1.3em;
	letter-spacing: 0.25em;
	position: relative;
	z-index: 1;
	padding-right: 15px;
}
h3::before{
	content: "";
	position: absolute;
	top: 51%;
	right: 0;
	height: 3px;
	width: 100%;
	transform: translateY(-50%);
	border-top:1px solid #888;
}
h3 > span::after{
	content: "";
	position: absolute;
	top: 51%;
	right: -150px;
	height: 3px;
	width: 150px;
	transform: translateY(-50%);
	border-top:1px solid #ff742f
}

/*moreボタン*/
#main a .more_btn,
.more_btn{
	display: block;
	margin: 0 auto;
	text-align: center;
	text-decoration: none !important;
	line-height: 1.4 !important;
}
#main a .more_btn span,
.more_btn a,
.more_btn > button{
	margin: 0 auto;
	color: #555;
	border: 3px solid #555;
	display: block;
	padding: 5px 15px;
	box-sizing: border-box;
	min-width: 180px;
	max-width: 400px;
	border-radius: 50px;
	letter-spacing: 0;
	position: relative;
	text-align: center;
	font-weight: bold;
	transition: all ease .3s;
	text-decoration: none !important;
	cursor: pointer;
}
#main a:hover .more_btn span,
.more_btn a:hover{
	color: #ff742f !important;
	text-decoration: none !important;
}
#main a .more_btn span,
#main .more_btn a{
	color: #555;
	text-decoration: none !important;
}
.more_btn > button{
	width: 350px;
	font-size: 1.1em;
	padding: 12px 50px;
	color: #fff;
	background: #ff742f;
	border-color: #ff742f;
}
.more_btn > button:hover{
	text-decoration: none !important;
	background: #e0601a;
	border-color: #e0601a;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
	width: 400px;
}
.more_btn > button::before,
a .more_btn span::before,
.more_btn a::before{
	content: "";
	position: absolute;
	left: 8px;
	top: 5px;
	display: block;
	width: 16px;
	height: 16px;
	background: #ff742f;
	border: 2px solid #ff742f;
	border-radius: 100%;
	vertical-align: middle;
	transition: all ease .3s;
	transform: scale(0.25);
}
.more_btn > button::before{
	border-color: #fff;
	background: #fff;
	top: 15px;
}
.more_btn > button::after,
a .more_btn span::after,
.more_btn a::after{
	content: "";
	position: absolute;
	left: 14px;
	top: 12px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #ff742f;
    border-right: 2px solid #ff742f;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	transition: all ease .3s;
	opacity: 0;
}
.more_btn > button::after{
	top: 22px;
}
.more_btn > button:hover::before,
a:hover .more_btn span::before,
.more_btn a:hover::before{
    transform: scale(1.2);
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
.more_btn > button:hover::after,
a:hover .more_btn span::after,
.more_btn a:hover::after{
	opacity: 1;
}


/*result*/
#main .list_thumb a:hover{
	text-decoration: none;
}
.list_thumb li{
	box-sizing: border-box;
	overflow: hidden;
}
.list_thumb a span{
	width: 90%;
	height: 180px;
	display: block;
	overflow: hidden;
	position: relative;
	background: #000;
	border-radius: 10px;
	transition: all ease .3s;
	z-index: 1;
}
.list_thumb a span img{
	width: 101%;
	height: 101%;
	transition: all ease .3s;
}
.list_thumb a span::before{
	content: "MORE";
	position: absolute;
	z-index: 1;
	color: #fff;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) scale(1);
	transition: all ease .3s;
	opacity: 0;
}
.list_thumb a:hover span{
	border-radius: 25px;
}
.list_thumb a:hover span img{
	transform: scale(1.1);
	opacity: 0.7;
}
.list_thumb a:hover span::before{
	transform: translate(-50%,-50%) scale(1.2);
	opacity: 1;
}

.list_thumb dl{
	margin-top: 15px;
	display: flex;
}
.list_thumb dt{
	width: 25%;
	font-weight: bold;
	font-size: 80%;
	position: relative;
	padding-bottom: 10px;
}
.list_thumb dt::after{
	content: "";
	width: 2px;
	height: 50px;
	background: #555;
	position: absolute;
	top: -30px;
	right: 0;
	z-index: 2;
}
#main .list_thumb a dd{
	color: #555;
	padding-left: 15px;
	width: 60%;
	font-size: 90%;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}

.dl_company{
	margin: 40px auto 80px auto;
}
.dl_company dt{
	box-sizing: border-box;
	font-size: 2.7em;
	margin-bottom: 1em;
}
.dl_company dd{
	line-height: 2;
}
.dl_company dd p{
	margin-bottom: 30px;
}
.slider{
	margin: 40px auto 100px auto;
}

.tb_wide{
	width: 100%;
	margin: 30px auto;
}
.tb_wide th{
	width: 30%;
	text-align: center;
}
.tb_wide th,.tb_wide td{
	padding: 3%;
}
.tb_wide tr:nth-child(odd) th{
	background: #fafafa;
}
.tb_wide tr:nth-child(odd) td{
	background: #fefefe;
}
.tb_wide tr:nth-child(even) th{
	background: #f5f5f5;
}
.tb_wide tr:nth-child(even) td{
	background: #fafafa;
}
.tb_wide td span{
	margin-left: 2em;
	font-size: 0.9em;
	color: #888;
}
.tb_wide td span::before,
.tb_wide td span::after{
	content: "-";
	margin: 0 3px;
}

.access{
	width: 90%;
	position: relative;
	margin: 50px auto 100px auto;
}
.access iframe{
	width: 100%;
	height: 450px;
}
.access dl{
	position: absolute;
	z-index: 1;
	bottom: -30px;
	right: -30px;
	border:2px solid #555;
	border-radius: 5px;
	background: #f8f8f8;
	padding: 20px 30px;
	box-sizing: border-box;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
}
.access dt{
	color: #ff742f;
	font-size: 1.5em;
	margin-bottom: 1.5em;
	position: relative;
}
.access dt::after{
	content: "";
	width: 50%;
	height: 4px;
	background: #ff742f;
	position: absolute;
	left: 0;
	top: -22px;
}

.introduction{
	width: 90%;
	max-width: 1000px;
	margin: 80px auto
}
.introduction > article{
	box-sizing: border-box;
	padding: 2% 0;
}
.introduction > article a{
	position: relative;
	display: block;
	overflow: hidden;
	height: 280px;
	border-radius: 10px;
	padding: 0;
	transition: all ease .3s;
}
.introduction > article a:hover{
	border-radius: 25px;
}
.introduction > article a::before{
	content: "";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.2);
	transition: all ease .3s;
}
.introduction > article a:hover::before{
	background: rgba(0,0,0,0.5);
}
.introduction dl{
	width: 100%;
	max-width: 800px;
	border-radius: 5px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	box-sizing: border-box;
	padding: 15px;
	color: #fff;
	z-index: 2;
	text-align: center;
}
.introduction dl dt{
	font-weight: bold;
	margin-bottom: 1em;
	font-size: 1.5em;
	padding: 0 10px;
}
.introduction a dl dd{
	width: 100%;
	display: block;
	opacity: 0.7;
	transition:ease .3s;
	overflow: hidden;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
.introduction a:hover dl dd{
	opacity: 1;
}
.introduction a dl dd p:first-child{
	text-align: left;
}
#main .introduction a .more_btn span{
	margin-top: 1.5em !important;
	border-color: #fff !important;
	color: #fff !important;
}
#main .introduction a:hover .more_btn span{
	background: #ff742f !important;
	color: #fff !important;
	border-color: #ff742f !important;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
}
.introduction article a img{
	width: 100%;
	height: 100%;
	transition: all ease 1s;
}
.introduction article a:hover img{
	transform: scale(1.1);
}

.recruit_message{
	margin-bottom: 100px;
}
.recruit_message > li:first-child{
	width: 50%;
	padding-right: 8%;
	box-sizing: border-box;
}
.recruit_message > li:first-child img{
	box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);
}
.recruit_message dt{
	font-size: 1.7em;
	margin-bottom: 2em;
	font-weight: bold;
	position: relative;
	padding-top: 1em;
}
.recruit_message dt em::before{
	content: "・・・・・・・";
	color: #ff742f;
	position: absolute;
	left: 0;
	top: 0;
	letter-spacing: 0.25em;
	font-size: 0.8em;
	z-index: 1;
}
.recruit_message dd p:last-of-type{
	margin-top: 40px;
}
.recruit_message dd p:last-of-type::before{
	content: "";
	display: block;
	width: 20px;
	height: 3px;
	background: #ccc;
	margin-bottom: 40px;
}

.txt_flow{
	background: url(../images/index/bg_concept.gif) no-repeat center;
	background-size: contain;
	line-height: 3;
	margin: 0 auto 50px auto;
	overflow: hidden;
}
#dl_flow{
	counter-reset:flow;
	width: 90%;
	max-width: 800px;
	margin: 80px auto 0 auto;
}
#dl_flow dt{
	font-size: 1.5em;
	position: relative;
	padding-left: 50px;
	margin-bottom: 1em;
}
#dl_flow dt::before,
#dl_flow dt::after{
	content: "";
	color: #ff742f;
	position: absolute;
}
#dl_flow dt::before{
	counter-increment:flow;
	content: counter(flow, decimal-leading-zero);
	left: 8px;
	top: 6px;
	font-size: 0.7em;
}
#dl_flow dt::after{
	border: 2px solid #ff742f;
	border-radius: 100%;
	left: -2px;
	top: -4px;
	width: 40px;
	height: 40px;
}
#dl_flow dd{
	position: relative;
	margin-bottom: 60px;
	box-sizing: border-box;
	padding: 0 0 20px 50px;
	overflow: hidden;
}
#dl_flow dd img{
	width: 35%;
	float: left;
	clear: left;
	padding: 0 3% 1% 0;
	box-sizing: border-box;
}
#dl_flow dd p{
	margin-bottom: 1em;
	line-height: 2;
}
#dl_flow dd p.more_btn{
	padding-left: 30%;
}
#dl_flow dd::before,
#dl_flow dd::after{
	content: "";
	position: absolute;
	left:18px;
	transform: translateX(-50%);
	width: 5px;
}
#dl_flow dd::before{
	height: 100%;
	border-right: 1px solid #888;
	top: 0;
}
#dl_flow dd::after{
	bottom: 0;
	height: 20%;
	border-right: 1px solid #ff742f;
}
#dl_flow dd:last-of-type::before,
#dl_flow dd:last-of-type::after{
	display: none;
}

.business_intro{
	position: relative;
	width: 90%;
	margin: 0 auto;
	padding: 100px 0;
}
.bg_yl{
	background:#fef6ea;
	width: 100%;
}
.business_intro section{
	position: absolute;
	width: 40%;
	z-index: 2;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
	padding: 5% 3%;
}
#main > .business_intro:first-of-type section{
	padding:3%;
}
.bg_yl .business_intro section{
	left: 0;
}
.business_intro section p.more_btn{
	margin-top: 25px;
	max-width: 200px;
}
.business_intro section h2,
.business_intro section p{
	position: relative;
	z-index: 1;
}

.business_intro section.or p.more_btn a{
	background: #fff;
}
.business_intro section.or p.more_btn a:hover{
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
.business_intro section div{
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: #fef6ea;
	padding-bottom: 40px;
}
.bg_yl .business_intro section div{
	background: #fff;
}
.business_intro section div::before{
	content: "";
	width: 100%;
	height: 100%;
	background: #ff742f;
	position: absolute;
	left: 10px;
	top: 10px;
	z-index: -1;
}

.business_intro section div.active::before{
	animation: slideIn 1s ease 0s 1 alternate;
    -webkit-animation: slideIn 1s ease 0s 1 alternate;
}

.business_intro ul{
	width: 65%;
}
.bg_yl .business_intro ul{
	margin-left: 35%;
}
.business_intro ul li img{
	width: 100%;
	height: 600px;
}

.policy_check{
	text-align: center;
	border: 3px solid #eee;
	border-radius: 7px;
	margin: 30px auto 5px auto;
}
.policy_check label{
	width: 100%;
	padding: 15px 0;
    display: block;
    cursor: pointer;
    position: relative;
	font-weight: bold;
	transition: all ease .3s;
}
.policy_check label:hover{
	background: #fef6ea
}
.policy_check label span {
      display: inline-block;
      position: relative;
      background-color: transparent;
      width: 25px;
      height: 25px;
      transform-origin: center;
      border: 2px solid #555;
      border-radius: 50%;
      vertical-align: -6px;
      margin-right: 10px;
      transition: background-color 150ms 200ms, transform 350ms cubic-bezier(.78,-1.22,.17,1.89);
}
.policy_check label span::before {
      content: "";
      width: 0px;
      height: 2px;
      border-radius: 2px;
      background: #ff742f;
      position: absolute;
      transform: rotate(45deg);
      top: 13px;
      left: 9px;
      transition: width 50ms ease 50ms;
      transform-origin: 0% 0%;
    }
.policy_check label span::after {
      content: "";
      width: 0;
      height: 2px;
      border-radius: 2px;
      background: #ff742f;
      position: absolute;
      transform: rotate(305deg);
      top: 16px;
      left: 10px;
      transition: width 50ms ease;
      transform-origin: 0% 0%;
    }

.policy_check label:hover span::before {
        width: 5px;
        transition: width 100ms ease;
      }
.policy_check label:hover span::after {
        width: 10px;
        transition: width 150ms ease 100ms;
      }
.policy_check input[type="checkbox"] {
    display: none;
}
.policy_check input[type="checkbox"]:checked + label span{
    background-color: #ff742f;
	border-color: #ff742f;
    transform: scale(1.25);
}
.policy_check input[type="checkbox"]:checked + label span::after {
          width: 10px;
          background: #fff;
          transition: width 150ms ease 100ms;
        }
 .policy_check input[type="checkbox"]:checked + label span::before {
          width: 5px;
          background: #fff;
          transition: width 150ms ease 100ms;
        }

.tb_mail{
	margin: 60px auto 20px auto;
	width: 100%;
	border-top: 1px solid #f0f0f0;
}
.tb_mail tr{
	border-bottom: 1px solid #f0f0f0;
}
.tb_mail th,.tb_mail td{
	padding: 25px 15px;
	box-sizing: border-box;
}
.tb_mail th{
	width: 30%;
	background: #fafafa;
}
.tb_mail th.hissu::after{
	content: "\5FC5\9808";
	color: #ff742f;
	border:1px solid #ff742f;
	display: inline-block;
	float: right;
	font-size: 70%;
	font-weight: normal;
	padding: 1px 5px;
}
.tb_mail td input,.tb_mail td textarea{
	border: 1px solid #ccc;
	padding: 10px 5px;
	font-size: 110%;
	box-sizing: border-box;
	width: 100%;
}
.tb_mail td input:focus,.tb_mail td textarea:focus,
.tb_mail td input:hover,.tb_mail td textarea:hover{
	background: #fef6ea
}
.tb_mail td input.small{
	width: 50%;
}
.tb_mail td input[type="checkbox"]{
	display: none;
}
.tb_mail td input[type="checkbox"] + label{
	font-weight: bold;
	cursor: pointer;
	width: 48%;
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	padding: 5px 0 5px 30px;
	line-height: 23px;
}
.tb_mail td input[type="checkbox"] + label::before{
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	border: 2px solid #555;
	border-radius: 100%;
	left: 0;
	top: 5px;
	transition: all ease .3s;
}
.tb_mail td input[type="checkbox"] + label::after{
	content: "";
	position: absolute;
	top: 13px;
  left: 7px;
  width: 8px;
  height: 3px;
  border-left: 2px solid #ff742f;
  border-bottom: 2px solid #ff742f;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
	transition: all ease .3s;
	opacity: 0;
}
.tb_mail td input[type="checkbox"] + label:hover::after{
	opacity: 1;
}
.tb_mail td input[type="checkbox"]:checked + label::before{
	background: #ff742f;
	border-color: #ff742f;
}
.tb_mail td input[type="checkbox"]:checked + label::after{
	opacity: 1;
	border-color: #fff;
}

.tb_mail td a.link_dayori{
	margin: 15px 0 12px 0;
	display: inline-block;
	background: #ff742f;
	color: #fff !important;
	font-weight: bold;
	font-size: 80%;
	padding: 14px 15px 12px 15px;
	position: relative;
	text-align: center;
	line-height: 1.2;
	transition: all ease .3s;
}
.tb_mail td a.link_dayori:hover{
	opacity: 0.5;
}
.tb_mail td a.link_dayori::after{
	content: "";
	position: absolute;

	left: 50%;
	transform: translateX(-50%);
	bottom: -8px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 10px 0 10px;
	border-color: #ff742f transparent transparent transparent;
}
.tb_mail td input[type="checkbox"] + label.cate_dayori{
	display: block ;
	width: 100% ;
}

.tb_mail td input::placeholder{
	color: #ccc;
	font-size: 80%;
}
.tb_mail td textarea{
	resize: vertical;
	min-height: 150px;
}


#policy hr{
	margin: 20px auto;
}
#policy ul{
	margin: 20px 0;
}
#policy ul > li{
	position: relative;
	padding-left: 14px;
	font-weight: bold;
	font-size: 90%;
}
#policy ul > li::before{
	content: "";
	position: absolute;
	left: 0;
	top: 4px;
	width: 4px;
	height: 4px;
	line-height: 1;
	border-radius: 100%;
	border: 3px solid #ff742f
}


/* 整理収納アドバイザー */
html.adviser:before,
html.adviser:after,
html.adviser body::before,
html.adviser body::after{
	background: #b0d8db !important;
}
html.adviser #u_img{
	height: auto;
}
html.adviser #u_img::before{
	display: none;
}
html.adviser #u_img img{
	width: 70%;
	height: auto;
	margin-left: 30%;
	border-bottom: 5px solid #72c0c5;
}
html.adviser #u_img > div{
	color: #888;
	position: absolute;
	width: 26%;
	left: 5%;
	top: 45%;
	animation: leftIn 1.5s ease 0s 1 normal;
    -webkit-animation: leftIn 1.5s ease 0s 1 normal;
}
html.adviser #u_img h1{
	text-align: left;
	position: static;
	color: #72c0c5;
	white-space:nowrap;
}
html.adviser #u_img h1::after{
	display: none;
}
html.adviser #u_img p{
	line-height: 2;
}
html.adviser #u_img ul{
	left: auto;
	right: 0;
	bottom: 0;
	background: none;
	color: #fff;
	width: auto;
}
html.adviser #u_img ul > li a{
	color: #fff;
}
html.adviser #u_img ul > li a::after{
	border-color: #fff;
}
html.adviser #u_img ul > li:last-of-type{
	padding-top: 2px;
}
.bg_bl{
	background:#f1f7f8;
	padding: 50px 0;
}

html.adviser h2{
	color: #72c0c5;
}
html.adviser h2.fl_box{
	display: flex;
	justify-content: center;
	align-items: center;
}
html.adviser h2 span{
	width: 250px;
	text-align: left;
}
html.adviser h2 figure{
	margin-right: 20px;
}
html.adviser h2 figure.circle{
	border-radius: 50%;
	overflow: hidden;
	width: 130px;
	height: 130px;
}
html.adviser h2 figure.circle img{
	width: 100%;
	height: 100%;
}
html.adviser h2 em{
	color: rgb(223, 233, 238);
	font-size: 2.6em;
	letter-spacing: 0.1em;
}

html.adviser #foot_temp > li{
	width: 100%;
}
html.adviser #foot_temp > li p span.btn::before,
html.adviser #foot_temp >li:last-child a{
	background: #72c0c5;
}
html.adviser #foot_temp > li p span.btn::before,
html.adviser #foot_temp > li p span.btn::after{
	border-color: #72c0c5;
}
html.adviser #foot_temp >li:last-child a::before{
	background: #50b2b9;
	transition: all ease .7s;
	transform: translateX(0) translateY(-100%);
}
html.adviser #foot_temp >li:last-child a:hover::before{
	transform: translateX(0) translateY(0);
}
html.adviser #foot_temp > li h2{
	color: #fff;
}
html.adviser #foot_temp > li h2 em{
	color: rgba(255, 255, 255, 0.582);
}
html.adviser #foot_temp > li p span.btn{
	color: #72c0c5;
}
html.adviser footer address > ul.links{
	display: flex;
	justify-content: space-between;
}
html.adviser footer address > ul.links >li:last-of-type{
	width: auto;
	margin-left: auto;
	color: #888;
}
html.adviser footer .link_insta{
	display: inline-block;
	background: #b0d8db;
	margin-left:10px;
	position: static;
	vertical-align: middle;
}
html.adviser footer .link_insta:hover{
	background: #72c0c5;
}

.seiri-shuno{
	position: relative;
	z-index: 1;
}
html.adviser h3{
	color: #72c0c5;
	text-align: center;
}
html.adviser h3 span{
	background: none;
}
html.adviser h3::before,
html.adviser h3 span::after{
	display: none;
}

html.adviser #main{
	padding-bottom: 0;
}
html.adviser #greeting{
	margin-top: 50px;
}
html.adviser #greeting p:not(:last-of-type){
	margin-bottom: 2em;
}

.seiri-shuno p em{
	display: inline-block;
	font-weight: bold;
	position: relative;
}
.seiri-shuno p em::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 6px;
	left: 0;
	bottom: 2px;
	background: #b0d8db;
	z-index: -1;
}
.seiri-shuno ul.list > li{
	position: relative;
	margin-bottom: 20px;
	padding-left: 15px;
	font-weight: bold;
}
.seiri-shuno ul.list > li em{
	position: relative;
	z-index: 1;
}
.seiri-shuno ul.list > li em::after{
	content: "";
	position: absolute;
	width: 100%;
	height: 6px;
	left: 0;
	bottom: 0;
	background: #b0d8db;
	z-index: -1;
}
.seiri-shuno ul.list > li::before{
	content: "";
	position: absolute;
	top: 0.5em;
	left: 0;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background:#72c0c5;
}
.seiri-shuno .fl_box{
	margin-top: 30px;
	display: flex;
	justify-content: space-between;
}
.seiri-shuno .fl_box article{
	width: 48%;
	background: #fff;
	padding: 0 30px 15px 30px;
	border-radius: 5px;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}


.seiri-shuno_result{
	padding: 0 0 50px 0;
}
.seiri-shuno_result .more_btn a{
	background: #fff;
	max-width: 200px;
}
.seiri-shuno_result .fl_box{
	display: flex;
	margin:30px auto
}
.seiri-shuno_result .fl_box > li{
	width: 48%;
	padding: 0 1%;
	text-align: center;
}
.seiri-shuno_result dt{
	margin: 0 auto 20px auto;
	font-size: 1.1em;
	text-align: center;
}
.seiri-shuno_result dt span{
	display: inline-block;
	min-width: 200px;
	max-width: 80%;
	border: 2px solid #72c0c5;
	border-radius: 30px;
	background: #fff;
	color: #72c0c5;
	font-weight: bold;
	text-align: center;
	padding: 10px 15px;
	box-sizing: border-box;
	letter-spacing: 0.1em;
}


/* ↓wp？ */
.img_b-a{
	width: 100%;
	display: block;
	margin-top: 30px;
}
.img_b-a img{
	max-height: 500px;
}

.img_b-a dt{
	margin: 0 auto 20px auto;
	font-size: 1.1em;
	text-align: center;
}
.img_b-a dt span{
	display: inline-block;
	min-width: 200px;
	max-width: 80%;
	border: 2px solid #72c0c5;
	border-radius: 30px;
	background: #fff;
	color: #72c0c5;
	font-weight: bold;
	text-align: center;
	padding: 10px 15px;
	box-sizing: border-box;
	letter-spacing: 0.1em;
}
.img_b-a{
	font-weight: bold;
	padding: 30px 15px 50px 15px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 7px;
	box-shadow: 0 1px 5px 0 rgba(50,25,25,0.2);
	position: relative;
	z-index: 1;
}
.img_b-a dd ul.r_slider{
	margin-bottom: 60px;
}
.img_b-a dd ul.r_slider li{
	text-align: center !important;
}
.img_b-a dd ul.r_slider li img{
	border-radius: 5px;
	margin: 0 auto;
	text-align: center;
}
.img_b-a dd ul.r_slider li p{
	margin: 15px auto 0 auto;
	max-width:600px;
}
.img_b-a p.ex{
	text-align: left;
	max-width:600px;
	margin: 0 auto;
	padding: 30px;
	font-size: 90%;
	box-sizing: border-box;
	background: #f5f5f5;
	border-radius: 5px;
}
#top_result .img_b-a dd ul.r_slider .prev,
#top_result .img_b-a dd ul.r_slider .next{
	z-index: 100;
}
#top_result .img_b-a dd ul.r_slider .prev{
	left: 0;
}
#top_result .img_b-a dd ul.r_slider .next{
	right: 0;
}


.p_link{
	margin: 80px auto 30px auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.p_link li{
	width: 24%;
	margin-bottom: 15px;
}
.p_link a{
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	display: block;
	padding: 15px 15px 30px 15px;
	position: relative;
	font-weight: bold;
	transition: all ease .7s;
	background: #fff;
	border-radius: 7px;
	box-shadow: 3px 0 20px rgba(114, 192, 197, 0.1);
}
.p_link a:hover{
	background: #f1f7f8;
	border-color: #72c0c5;
	transform: translateY(5px);
	box-shadow: 3px 0 20px rgba(114, 192, 197, 0.3);
}
.p_link a::before{
	content: "";
	position: absolute;
	width: 90%;
	height: 1px;
	background: #72c0c5;
	left: 5%;
	top: -1px;
	z-index: 1;
}
.p_link a::after{
	content: "";
	position: absolute;
	width: 6px;
	height: 6px;
	transform: rotate(45deg) translateY(-50%);
	border-right: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
	left: 46%;
	bottom: 12px;
	transition: all ease .3s;
  }
.p_link a:hover::after{
	bottom: 9px;
	border-color: #72c0c5;
}

.p_link a > span{
	display: flex;
	flex-direction: column;
	align-items: center;

	color: #72c0c5 !important;
	position: relative;
	transition: all ease .3s;
}
.p_link li figure{
	display: inline-block;
	width: 100%;
	height: 100px;
	overflow: hidden;
	margin-bottom: 25px;
}
.p_link li img{
	width: 100%;
	height: 100%;
	transition: all ease .5s;
}
.p_link li a:hover img{
	transform: scale(1.2);
}

p.link_insta{
	width:80%;
	max-width: 500px;
	margin: 30px auto 80px auto;
}
p.link_insta a{
	display: flex;
	justify-content: center;
	padding: 30px;
	border-radius: 7px;
	color: #555 !important;
	font-weight: normal;
	background: #f1f7f8;
	transition: all ease .5s;
}
p.link_insta a:hover{
	background: #e3f1f3;
	transform: translateY(5px);
	box-shadow: 3px 0 20px rgba(114, 192, 197, 0.2);
}
p.link_insta #icon_insta{
	fill: #50b2b9;
}


  #price{
	  padding: 20px 0 50px 0;
  }
  #price .wrap{
	  box-sizing: border-box;
	padding: 30px;
	  border-radius: 10px;
	  background: #fff;
  }
  #price article{
	  display: flex;
	  flex-wrap: wrap;
	  justify-content: space-between;
  }
  #price article dl{
	  width: 48%;
	  margin-bottom: 2em;
  }
  #price article dl dt{
	border-top: 2px solid #eee;
	padding-top: 10px;
	  display: flex;
	  flex-wrap: wrap;
	  font-weight: bold;
	  margin-bottom: 0.5em;
	  line-height: 1.4;
	  align-items: center;
	  font-size: 90%;
  }
  #price article dl dt span{
	width: 50%;
	font-size: 120%;
	padding: 0 0.5em;
	box-sizing: border-box;
  }
  #price article dl dt em{
	  box-sizing: border-box;
		width: 50%;
		text-align: center;
	  background: #f1f7f8;
	  color: #72c0c5;
	  padding: 5px 1em;
  }
  #price article dl dd {
	  padding: 0 0.5em;
	  box-sizing: border-box;
  }
  #price em.red,
  #area em.red{
	  color: #d11f12;
  }
  #price dl.bg_g{
	  background: rgb(240, 242, 243);
	  padding: 20px;
	  box-sizing: border-box;
  }
  #price dl.bg_g dt{
	  border-bottom: 2px solid #e6ebec;
	  margin-bottom: 0.5em;
	  padding-bottom: 0.5em;
  }

  #area div.fl_box{
	  display: flex;
	  justify-content: space-between;
	  margin-bottom: 100px;
  }
  #area div.fl_box > div{
	  width: 49%;
	  border-radius: 10px;
	  padding: 30px 30px 50px 30px;
	  background: #f8f8f8;
	  box-sizing: border-box;
	  text-align: center;
	  position: relative;
  }
  #area img{
	  display: block;
  }
  
  #area div.fl_box > div div{
	  width: 80%;
	  height: 3em;
	  position: absolute;
	  left: 10%;
	  bottom: -30px;
	  background: #fff;
	  border-radius: 10px;
	  padding: 20px 30px;
	  box-sizing: border-box;
	  font-weight: bold;
	}
	#area h4{
		color: #f46b0e;
		margin-bottom: 0.5em;
	}
	#area p.ta_center{
		padding-top: 30px;
	}

.cate_list{
	display: table;
	margin: 0 auto 30px auto;
	background: #fff;
	box-shadow: 0 1px 5px 0 rgba(50,25,25,0.2);
	box-sizing: border-box;
	padding: 15px;
	border-radius: 7px;
	max-width: 80%;
}
.cate_list h4{
	margin: 0 auto 10px auto;
	text-align: center;
}
.cate_list h4 span{
	display: inline-block;
	background: #ff742f;
	color: #fff;
	padding: 5px 25px;
	border-radius: 25px;
}
.cate_list ul > li{
	display: inline-block;
	margin-right: 15px;
}
.cate_list ul > li a{
	text-decoration: underline;
}

p.sub_txt{
	margin-top: 30px;
}
p.sub_txt a::before{
	content: "";
	position: absolute;
	left: 8px;
	top: 5px;
	display: block;
	width: 16px;
	height: 16px;
	background: #ff742f;
	border: 2px solid #ff742f;
	border-radius: 100%;
	vertical-align: middle;
	transition: all ease .3s;
	transform: scale(1);
}
p.sub_txt a::after{
	content: "";
	position: absolute;
	left: 16px;
	top: 11px;
    width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 5px;
	border-color: transparent transparent transparent #ffffff;
    -webkit-transform: rotate(0);
    transform: rotate(0);
	opacity: 1;
}
p.sub_txt a:hover::before{
    transform: scale(1.2);
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
p.sub_txt a:hover::after{
	border-color: transparent transparent transparent #ff742f;
}

.dl_security{
	margin: 10px auto 30px auto;
	display: flex;
	flex-wrap: nowrap;
	background: #fef6ea;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 10px;
}
.dl_security dl{
	flex: 1;
	box-sizing: border-box;
	margin: 10px;
	padding: 15px;
	border-radius: 7px;
	background: #fff;
	text-align: center;
	box-shadow: 0 1px 5px 0 rgba(0,0,0,0.1);
}
.dl_security dt{
	font-weight: bold;
	width: 130px;
	background: #ff742f;
	color: #fff;
	padding: 5px 15px;
	border-radius: 15px;
	margin: 0 auto;
	margin-bottom: 15px;
}
.dl_security .big{
	margin-bottom: 15px;
	font-size: 1.4em;
}
.dl_security .big em{
	font-weight: bold;
	display:block;
	color: #ff742f;
}
.dl_security .big strong{
	font-size: 1.7em;
}


.dl_point{
	counter-reset:point;
	margin-top: 30px;
}
.dl_point dt{
	font-weight: bold;
	border-radius: 30px;
	padding: 16px 20px;
	margin-bottom: 10px;
	box-sizing: border-box;
	counter-increment:point;
	cursor: pointer;
	transition: all ease .3s;
	position: relative;
	border: 2px solid #555;
}
.dl_point dt.selected{
	background: #fef6ea;
}
.dl_point dt:hover{
	background: #fef6ea;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
.dl_point dt em{
	color: #ff742f;
}
.dl_point dt::before{
	content: "point" counter(point, decimal-leading-zero);
	margin-right: 10px;
	background: #555;
	color:#fff;
	border-radius: 15px;
	font-size: 0.9em;
	padding: 2px 15px;
	font-weight: normal;
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.2);
}
.dl_point dt::after{
	content: "";
	position: absolute;
	bottom: 40%;
	right: 25px;
	width: 12px;
	height: 12px;
	border-bottom: 3px solid #ff742f;
	border-right: 3px solid #ff742f;
	-webkit-transform: rotate(45deg);
     transform: rotate(45deg);
	transition: all ease .3s;
}
.dl_point dt.selected::after{
	-webkit-transform: rotate(-135deg);
     transform: rotate(-135deg);
	bottom: 30%;
}
.dl_point dd{
	padding: 0px 20px 40px 20px;
	box-sizing: border-box;
}

.subsidence > article{
	padding: 60px 0 100px 0;
}
.subsidence > article dt{
	text-align: center;
	font-weight: bold;
	position: relative;
	font-size: 1.2em;
	margin-top: 80px;
	margin-bottom: 50px;
}
.subsidence > article dt::before{
	content: "";
	position: absolute;
	left: 50%;
	top: -50px;
	width: 4px;
	height: 2px;
	border-left: 1px solid #ff742f;
	transition-delay: 8s;
	transition: all ease 1s;
}
.subsidence > article dt.active::before{
	height: 30px;
}

.subsidence article article{
	display: flex;
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
.subsidence .s_slider{
	width: 50%;
	height: 350px;
}
.subsidence .s_slider img{
	width: 100%;
	height: 350px;
	object-fit: cover;
	border-radius: 10px;
}
.subsidence article dl{
	padding: 0 50px;
	width: 50%;
}
.subsidence article dd p{
	line-height: 2;
}

.box_video{
	margin: 20px auto;
	width: 80%;
	text-align: center;
	background: #fef6ea;
	padding: 40px;
	border-radius: 20px;
	box-sizing:border-box;
}
.box_video h4{
	background: #ff742f;
	color: #fff;
	border-radius: 25px;
	padding: 5px 30px;
	box-sizing:border-box;
	display: inline-block;
	font-size: 1.1em;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
}
.box_video video::before{
	content: "";
	display: block;
	clear: both;
}
.box_video video{
	border-radius: 10px;
	cursor: pointer;
	max-width: 800px;
	width: 100%;
}

.img_left > li:first-of-type{
	width: 40%;
	box-sizing: border-box;
	padding-right: 2%;
}
.img_left > li img{
	border-radius: 10px;
}

/*-----------------------------
Wordpress
------------------------------*/
#main .single a{
	color:#ff742f
}
#main .single a:hover{
	text-decoration:underline;
}

.single{
	padding: 40px 0 ;
}

.single h2{
	margin-top:1em;
	margin-bottom:0.5em;
	text-align: center;
	letter-spacing: 0.1em;
	color: #ff742f;
	font-size: 1.8em;
}
.single h3{
	margin-top:3em;
	padding-bottom:10px;
	position: relative;
}
.single h3::before{
	content: "";
	position: absolute;
	top: 100%;
	left:0;
	height: 3px;
	width: 100%;
	transform: translateY(0);
	border-top:1px solid #888;
}
.single h3::after{
	content: "";
	position: absolute;
	top: 100%;
	left:0;
	height: 3px;
	width: 150px;
	transform: translateY(0);
	border-top:1px solid #ff742f;
	z-index: 1;
}

.single ul > li{
	position: relative;
	padding-left: 14px;
	font-weight: bold;
}
.single ul > li::before{
	content: "";
	position: absolute;
	left: 0;
	top: 4px;
	width: 4px;
	height: 4px;
	line-height: 1;
	border-radius: 100%;
	border: 3px solid #ff742f
}
.single ol{
	counter-reset: num;
}
.single ol > li{
	position: relative;
	padding-left: 14px;
}
.single ol > li::before{
	counter-increment:num;
	content: counter(num, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 2px;
	font-size: 0.7em;
	color: #ff742f;
}

.page_link{
	width: 80%;
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
	display: table !important;
}
.page_link > li{
	padding: 0 3%;
}
.page_link a{
	border-color:#ccc !important;
	background: #fafafa;
}
.page_link a:hover{
	box-shadow: 0 1px 5px 0 rgba(0,0,0,0.15)
}

/* ギャラリー */
.gallery { /** ギャラリーを囲むボックス **/
	width: 100%;
	margin-bottom: 20px !important;
    overflow: hidden;
}

.gallery br {display: none;} /** 自動で挿入される clearfix の余白解除 **/

.gallery-item { /** 画像共通のスタイル **/
    float: left;
	margin-bottom: 0 !important;
}
.gallery-icon { /** 画像を囲む dt のスタイル **/
    text-align: center;
	margin-bottom: 10px;
}
.gallery-icon a{
	display: block;
	position: relative;
	border-radius: 10px;
	background: #000;
	overflow: hidden;
	transition: all ease .3s;
	z-index: 1;
}
.gallery-icon a:hover{
	border-radius: 25px;
}
.gallery-icon a::before{
	content: "LARGE";
	position: absolute;
	z-index: 1;
	color: #fff;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) scale(1);
	transition: all ease .3s;
	opacity: 0;
}
.gallery-icon a:hover::before{
	transform: translate(-50%,-50%) scale(1.2);
	opacity: 1;
}

.gallery-icon img {
	width: 100%;
	height: auto;
}
.gallery-icon a img{
	transition: all ease .3s;
}
.gallery-icon a:hover img{
	transform: scale(1.1);
	opacity: 0.7;
}

.gallery-caption { /** キャプション **/
    margin: 0 auto 30px auto;
    text-align: left;
	padding: 0 15px;
	box-sizing: border-box;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

.gallery-columns-1 .gallery-item { /** カラムなし **/
    width: 100%;
    margin-right: 0;
}
.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 48%;
	margin: 0 1%;
}
.gallery-columns-3 .gallery-item { /** 3カラム **/
    width: 31.33333%;
	margin: 0 1%;
}
.gallery-columns-4 .gallery-item { /** 4カラム **/
    width: 23%;
    margin: 0 1%;
}
.gallery-columns-5 .gallery-item { /** 5カラム **/
    width: 18%;
    margin: 0 1%;
}

.u_news{
	display: flex;
	flex-wrap: wrap;
	padding-top: 40px;
}
.u_news > li{
	width: calc(100%/3);
	margin-bottom: 10px;
}
.u_news dt{
	width: 30% !important;
}
.u_news dd{
	font-weight: bold;
}
#main .u_news a p{
	color: #555;
}
#pagenation{
	text-align: center;
	width: 80%;
	margin: 30px auto 0 auto;
}
#pagenation span,
#pagenation a{
	display: inline-block;
	margin: 0 2px;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-weight: bold;
	border: 2px solid #555;
}

#pagenation span{
	background: #fef6ea;
}
#pagenation a{
	transition: all ease .3s;
	transform: translate3d(0,0,0);
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
#pagenation a:hover{
	transform: scale(1.1) translate3d(0,0,0);
	line-height: 40px;
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.2);
}
.bg_yl #pagenation span{
	background: #FDECD2;
}
.bg_yl #pagenation a{
	background: #fff;
}

/*-----------------------------------------------
__Footer
-----------------------------------------------*/
#foot_temp{
	display: flex;
}
#foot_temp > li{
	width: 50%;
	text-align: center;
	display: flex;
}
#head_contact{
	margin-top: 30px;
	text-align: center;
}
#head_contact h2,
#foot_temp > li h2{
	color: #facd89;
}
#head_contact a,
#foot_temp > li a{
	width: 100%;
	color: #fff;
	display: flex;
	flex-wrap: wrap;
	flex-flow: column;
	justify-content:space-between;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
#foot_temp > li:first-child a{
	background: #ff742f;
}
#head_contact a,
#foot_temp >li:last-child a{
	background: #e0601a;
}
#head_contact a::before,
#foot_temp > li a::before{
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transform: translateX(-100%);
	transition: all ease .3s;
}
#foot_temp > li:first-child a::before{
	background: #f46b0e;
}
#head_contact a::before,
#foot_temp >li:last-child a::before{
	background: #d55712;
}
#head_contact a:hover::before,
#foot_temp > li a:hover::before{
	transform: translateX(0);
}

#head_contact a section,
#foot_temp > li a section{
	position: relative;
	z-index: 1;
}
#head_contact h2 em,
#foot_temp > li h2 em{
	color: #fff;
}
#head_contact p,
#foot_temp > li p{
	margin:40px auto;
}
#head_contact p span,
#foot_temp > li p span{
	font-weight: bold;
	display: block;
	font-size: 1.2em;
	letter-spacing: 0.15em;
	margin-bottom: 5px;
}
#head_contact p span em,
#foot_temp > li p span em{
	margin-right: 10px;
}
#head_contact p span.btn,
#foot_temp > li p span.btn{
	font-size: 1em;
	background: #fff;
	color: #ff742f;
	display: inline-block;
	padding: 15px;
	box-sizing: border-box;
	width: 250px;
	border-radius: 50px;
	letter-spacing: 0;
	position: relative;
	transition: all ease .3s;
}
#head_contact p a:hover span.btn,
#foot_temp > li p a:hover span.btn{
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.2);
}
#head_contact p span.btn::before,
#foot_temp > li p span.btn::before{
	content: "";
	position: absolute;
	left: 15px;
	top: 14px;
	display: block;
	width: 20px;
	height: 20px;
	background: #ff742f;
	border: 2px solid #ff742f;
	border-radius: 100%;
	vertical-align: middle;
	transition: all ease .3s;
	transform: scale(0.25);
}
#head_contact p span.btn::after,
#foot_temp > li p span.btn::after{
	content: "";
	position: absolute;
	left: 22px;
	top: 22px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ff742f;
    border-right: 2px solid #ff742f;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
	transition: all ease .3s;
	opacity: 0;
}
#head_contact a:hover p span.btn::before,
#foot_temp > li a:hover p span.btn::before{
    transform: scale(1.2);
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
#head_contact a:hover p span.btn::after,
#foot_temp > li a:hover p span.btn::after{
	opacity: 1;
}



footer address{
	width: 90%;
	max-width:1200px;
	margin:0 auto;
	padding:40px 0 20px 0;
	overflow:hidden;
}
footer address a{
	color: #555;
}
footer address > ul{
	width: 100%;
	display:table;
	vertical-align:middle;
}
footer address > ul > li{
	display:table-cell;
}
footer address ul > li li{
	display: inline-block;
	padding-right: 1.5em;
}
footer address > ul {
	margin-bottom: 58px;
}
footer address ul.links > li:nth-of-type(1){
	width: 190px;
	text-align: center;
	padding-right: 15px;
}
footer address ul.links > li:nth-of-type(2) a{
	border-left: 1px solid #facd89;
	padding: 0 15px;
	box-sizing: border-box;
	display: block;
	font-weight: bold;
	color: #555;
	transition: all ease .3s;
	font-size: 90%;
}
footer address ul >li:nth-of-type(2) a:hover{
	color: #ff742f;
}
footer address > ul.links >li:last-of-type{
	width: 60%;
	position: relative;
}

footer address > ul:last-of-type >li:last-of-type{
	text-align: right;
	width: 30%;
}
footer small{
	color: #aaa;
}

footer .link_insta{
	display: block;
	background: #facd89;
	width: 50px;
	height:50px;
	text-align: center;
	border-radius: 100%;
	box-sizing: border-box;
	padding: 13px;
	position: absolute;
	right: 0;
	transition: all ease .3s;
	transform: scale(0.8)
}
footer .link_insta #icon_insta{
	fill:#fff;
}
footer .link_insta:hover{
	background:#ff742f;
	transform: scale(1);
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}


/*-----------------------------------------------
__Index
-----------------------------------------------*/
/*画像切り替え*/
#top_img,#slider{
	width:100%;
	height: 780px;
	margin: 0 auto;
	position: relative;
	color: #fff;
}
#top_img .top_img_txt{
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#slider > li{
	width:100%;
	position: relative;
	z-index: 10;
}
#slider li dl{
	width: 40%;
	position: absolute;
	z-index: 10;
	left: 3%;
	bottom: 7%;
	animation: fadeIn 1s ease 1s 1 normal;
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
#slider li > a{
	color:#fff;
	display: block;
	position: relative;
	z-index: 10;
}
#slider li dt{
	font-size: 1.7em;
	font-weight: bold;
}
#slider li dd{
	font-weight: bold;
	font-size: 1.2em;
	color: #ff742f;
}

#slider li dd a{
	font-size: 80%;
	background: #ff742f;
	color: #fff;
	text-align: center;
	display:block;
	border-radius: 20px;
	padding: 0 20px;
	margin-top: 10px;
	width: 80px;
	transition: all ease .3s;
}
#slider li dd a:hover{
	background:rgba(255,116,47,0.7);
}

#slider li img{
	width:100%;
	height: 780px;
}

#slider::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;
	background: url(../common_images/bg_top_img.png) repeat;
	pointer-events: none;
}
#slider .slick-slide a::before{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	background: rgba(124,68,34,0.1);
}
#slider .slick-slide a::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 150px ;
	background: rgb(0,0,0);
	background: linear-gradient(0deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
	pointer-events: none;
}
	
#thumbnail-list {
	margin-top: -30px;
	position: relative;
	z-index: 5;
}
#thumbnail-list ul{
	width: 100%;
	display: flex;
	justify-content: space-between;
	counter-reset:num;
}
#thumbnail-list ul > li{
	width: 32.5%;
	box-sizing: border-box;
	padding: 0 1%;
	position: relative;
	counter-increment:num;
}
#thumbnail-list ul > li a{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 3;
}
#thumbnail-list ul > li span{
	display: table;
	margin: -15px auto 0 auto;
	padding: 3px 2em;
	border-radius: 20px;
	text-align: center;
	font-weight: bold;
	font-size: 105%;
	letter-spacing: 0.1em;
	color:#fff;
	background: #f46b0e;
	position: relative;
	z-index: 2;
	transition: all ease .3s;
}
#thumbnail-list ul > li:hover span{
	background: #333;
}
#thumbnail-list ul li figure{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	width: 100%;
	height: 120px;
	border: 3px solid #fff;
	border-radius: 7px;
	position: relative;
	overflow: hidden;
}
#thumbnail-list ul > li figure::before{
	content: "0" counter(num);
	position: absolute;
	left: 0.4em;
	top: 0.2em;
	font-size: 1.5em;
	font-weight: bold;
	color: #fff;
	z-index: 2;
}
#thumbnail-list ul > li figure::after{
	content: "";
	width: 100%;
	height: 100%;
	background: #f46b0e;
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: all ease .3s;
}
#thumbnail-list ul > li:hover figure::after,
#thumbnail-list ul > li.thumbnail-current figure::after{
	opacity: 0.5;
}
#thumbnail-list ul li img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#top_img .head_tel{
	height: 1.2em;
	width: 240px;
	text-align: center;
	position: absolute;
	right: -80px;
	top: 50%;
	transform: translateY(-50%) rotate(-90deg);
	z-index: 10;
	font-weight:bold;
	font-size: 1.2em;
	line-height: 1.2;
	letter-spacing: 0.1em;
	color: #fff;
	pointer-events: none;
}
#top_img .head_tel a{
	color: #fff;
}
#top_img .head_tel em{
	margin-right: 10px;
}

#top_news .more_btn,
#top_result .more_btn,
#top_photo .more_btn{
	text-align: center;
	max-width: 180px;
	margin-top: 10px;
}


#top_news{
	margin-top: 50px;
	background: #fff;
	padding: 10px 30px;
	box-sizing: border-box;
	position: relative;
	border-radius: 7px;
}
#top_news ul{
	display: flex;
	flex-wrap: nowrap;
}
#top_news h2{
	text-align: left;
	margin-top: 0;
	margin-bottom: 0;
}
#top_news ul >li:nth-child(1){
	width: 20%;
	padding: 20px 0;
}
#top_news ul > li:nth-child(2){
	padding: 20px 0;
	width: 80%;
}
#top_news dl{
	border-left: 2px solid #888;
	padding: 0 30px;
	box-sizing: border-box;
	display:flex;
  flex-wrap: wrap;
	overflow-y: scroll;
	height: 150px;
}
#top_news dl::-webkit-scrollbar {
    width: 5px;
  }
#top_news dl::-webkit-scrollbar-thumb{
    background: #ff742f;
    border-radius: 10px;
  }
#top_news dl::-webkit-scrollbar-track-piece {
    background: #fef6ea;
	border-radius: 10px;
  }
#top_news dt{
	font-weight: bold;
	width: 16%;
	padding: 5px 0;
	box-sizing: border-box;
}
#top_news dd{
	clear: left;
	width: 74%;
	padding: 5px 0;
	box-sizing: border-box;
}
#top_news dd span{
	min-width: 80px;
	border: 2px solid #555;
	text-align: center;
	display: inline-block;
	margin-right: 7px;
	font-size: 90%;
	line-height: 1.2;
	font-weight: bold;
	transition: all ease .3s;
	border-radius: 15px;
	padding: 0 5px;
}
#top_news dd p{
	display: inline-block;
}
#top_news dd a{
	color: #555;
	transition: all ease .3s;
}
#top_news dd a:hover{
	color: #ff742f 
}
#top_news dd a:hover span{
	border-color: #ff742f;
	color: #ff742f 
}

#concept{
	margin-bottom: 100px;
}
#concept .bg_img{
	width: 100%;
	height: 400px;
	display: flex;
	flex-wrap: nowrap;
}

#concept .bg_img article{
	width: 50%;
}
#concept .bg_img article img{
	width: 100%;
	height: 100%;
}
#concept .bg_img article img.img-ofi {
  object-fit: cover;
  object-position: top center;
  font-family: 'object-fit: cover; object-position: top center;'
}
#concept h2{
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
	position: relative;
	z-index: 10;
	margin-top: -25px;
	background: #fff;
	padding: 20px 30px;
	box-sizing: border-box;
	border-radius: 7px;
}
#concept dl{
	width: 90%;
	margin: 0 auto;
}
#concept dt{
	text-align: center;
	margin: 20px auto 50px auto;
}
#concept dd{
	background: url(../images/index/bg_concept.gif) no-repeat center top;
	background-size: 100% auto;
}
#concept dd p{
	max-width: 650px;
	margin: 30px auto;
	line-height: 3;
}
#concept dd p em{
	font-weight: bold;
	position: relative;
}
#concept dd p em::before{
	content: "・・・・・・";
	color: #ff742f;
	position: absolute;
	left: 0;
	top: -15px;
	line-height: 1;
}
#concept dd p:nth-of-type(2) em::before{
	content: "・・・・・";
}
#concept dd p strong{
	font-weight: bold;
	position: relative;
}
#concept dd p strong::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: -3px;
	height: 2px;
	width: 100%;
	background: #ff742f;
}

#top_result{
	background: #fef6ea;
	padding: 50px 0 100px 0;
}
#top_result .wrap{
	position: relative;
	max-width: 1200px;
}

#top_result h2{
	margin-bottom: 3em;
}
#top_result .prev,
#top_result .next{
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	cursor: pointer;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
}
#top_result .prev{
	left: -4%;
}
#top_result .next{
	right: -4%;
}
#top_result .prev::before,
#top_result .next::before{
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	background: #ff742f;
	border: 2px solid #ff742f;
	border-radius: 100%;
	vertical-align: middle;
	transition: all ease .3s;
	transform: scale(0.3);
}
#top_result .prev::after,
#top_result .next::after{
	content: "";
	position: absolute;
	left: 30%;
	top: 53%;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ff742f;
    border-right: 2px solid #ff742f;
    -webkit-transform: rotate(45deg) translate(-50%,-50%);
    transform: rotate(45deg) translate(-50%,-50%);
	transition: all ease .3s;
	opacity: 0;
}
#top_result .prev::after{
	top: 35%;
	left: 40%;
	-webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
#top_result .prev:hover::before,
#top_result .next:hover::before{
    transform: scale(1.2);
	background: #fff;
}
#top_result .prev:hover::after,
#top_result .next:hover::after{
	opacity: 1;
}
#top_result .more_btn{
	margin-top: 30px;
}

#top_flow{
	padding: 80px 0 110px 0;
}
#top_flow ul{
	position: relative;
}
#top_flow ul > li:first-child{
	width: 65%;
}
#top_flow ul > li:first-child article{
	position: relative;
}
#top_flow ul > li:first-child article::after{
	content: "";
	position: absolute;
	left: -10%;
	bottom: -10%;
	width: 100%;
	height: 100%;
	background: url(../common_images/bg_dot_orange.png) repeat;
	z-index: -1;
}
#top_flow ul > li:first-child img{
	width: 100%;
	height: 100%;
	border-radius: 15px;
}
#top_flow ul > li:last-child{
	position: absolute;
	background: #fff;
	width: 40%;
	right: 0;
	top: 8%;
	padding: 0 30px 30px 30px;
	box-sizing: border-box;
}
#top_flow h2{
	margin-top: 1em;
	margin-bottom: 2em;
}
#top_flow p:not(:last-of-type){
	line-height: 2;
	margin-bottom: 30px;
}
#top_flow .more_btn{
	width: 180px;
}

#top_photo{
	position: relative;
	width: 90%;
	max-width: 1280px;
	margin: 0 auto;
}
#top_photo h2 small{
	display: table;
	margin: 0 auto ;
	text-align: center;
}
#top_photo h2 small::before,
#top_photo h2 small::after{
	display: inline-block;
	font-size: 120%;
}
#top_photo h2 small::before{
	content: "\FF3C";
	margin-right: 0.5em;
}
#top_photo h2 small::after{
	content: "\FF0F";
	margin-left: 0.5em;
}

#top_photo .more_btn.fl_box{
	display: flex;
	justify-content: space-between;
	width: 90%;
	max-width: 650px ;
}

#top_photo .more_btn a{
	width: 45%;
	padding: 5px 40px;
}
#top_photo .more_btn a::before{
	-webkit-mask-image: url("../common_images/icon_instagram.svg");
	mask-image: url("../common_images/icon_instagram.svg");
	-webkit-mask-size: contain;
	mask-size: contain;
	background-color: #ff742f;
	transform: none;
	border-radius: 0;
}
#top_photo .more_btn a::after{
	display: none;
}
#top_photo .more_btn a:hover::before{
	 transform: scale(1.2);
}

#top_photo ul{
	width: 100%;
	margin-top: 60px;
	margin-bottom: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#top_photo ul > li{
	width:calc(100% / 6 - 10px);
	margin-bottom: 15px;
}
#top_photo ul > li a{
	position: relative;
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	transition: all ease .3s;
	z-index: 1;

	padding-top: 100%;
}
#top_photo ul > li a img{
	position: absolute;
	left: 0;
	top: 0;
	width:100%;
	height:100%;
	transition: all ease .3s;
}
#top_photo ul > li a:hover{
	border-radius: 30px;
}
#top_photo ul > li a:hover img{
	transform: scale(1.1);
	opacity: 0.7;
}



/*20220131_add*/
#main.top{
	padding-bottom: 0;
}
#dayori{
	margin-top: 80px;
	padding: 80px 0;
	background: #fef6ea;
}
#dayori h2{
	margin-top: 0;
}
#dayori h2 em{
	font-family:'Spinnaker',"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: bold;
}
#dayori .fl_box{
	justify-content: space-between;
	display: flex;
}
#dayori .fig{
	width: 30%;
}
#dayori .fig a{
	display: block;
	padding: 5px 5px 10px 5px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 0 #e0601a;
	transition: all ease .5s;
}
#dayori .fig a:hover{
	transform: translateY(-10px);
}
#dayori .fig img{
	display: block;
	margin-bottom: 5px;
}
#dayori .fig span{
	display: block;
	font-weight: bold;
	text-align: center;
	color: #333 !important;
}
#dayori .fig span::after{
	content: "PDF";
	border-radius: 5px;
	vertical-align: middle;
	margin-left: 10px;
	display: inline-block;
	background: #e0601a;
	color: #fff;
	font-size: 70%;
	padding: 0 6px;
	font-weight: normal;
}

#dayori .fig small{
	display: table;
	margin: 0 auto 10px auto;
	text-align: center;
	font-size: 110%;
	font-weight: bold;
	letter-spacing: 0.1em;
}
#dayori .fig small::before,
#dayori .fig small::after{
	display: inline-block;
	font-size: 120%;
}
#dayori .fig small::before{
	content: "\FF3C";
	margin-right: 0.5em;
}
#dayori .fig small::after{
	content: "\FF0F";
	margin-left: 0.5em;
}

#dayori section{
	width: 65%;
}
#dayori p.more_btn{
	margin-top: 2em;
}
#dayori p.more_btn a{
	background: #fff;
	max-width: 300px;
}


#bn_dayori{
	margin-top: 40px;
}
#bn_dayori a{
	display: block;
	background: #ff742f;
	color: #fff;
	font-weight: bold;
	padding: 15px 30px;
	border-radius: 10px;
	transition: all ease .5s;
	position: relative;
}
#bn_dayori a:hover{
	background: #e0601a;
	transform: translateY(-5px);
}

#bn_dayori dl{
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
	padding-left: 15%;
	z-index: 2;
}
#bn_dayori dl::before{
	content: "";
	position: absolute;
	left: -10px;
	top: 50%;

	width: 13%;
	height: 100px;
	background: url(../images/index/dayori.jpg) no-repeat;
	background-size: contain;
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.2));

	transform: rotate(10deg) translateY(-50%);
}
#bn_dayori dt{
	width:  50%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	flex-direction: row;
}
#bn_dayori dt em{
	font-size: 150%;
	color: yellow;
}
#bn_dayori dt span:first-of-type{
	margin-right: 1em;
}

#bn_dayori dd{
	width: 40%;
	text-align: right;
}
#bn_dayori dd span{
	position: relative;
}
#bn_dayori dd span::before,
#bn_dayori dd span::after{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	border-top: 1px solid #fff;
}
#bn_dayori dd span::before{
	top: -0.5em;
	transform: rotate(5deg);
}
#bn_dayori dd span::after{
	bottom: -0.5em;
	transform: rotate(-5deg);
}

#bn_dayori dd em{
	display: inline-block;
	background: yellow;
	color: #f46b0e;
	padding: 10px 20px;
	border-radius: 5px;
	margin-left: 10px;
}

/*-----------------------------------------------
__Common
-----------------------------------------------*/
@keyframes fadeIn {
  0%   { opacity: 0; transform: translateY(10%) }
  100% { opacity: 1;}
}
@keyframes slideIn{
  0%   { transform: translate(-10px,-10px);  }
  100% { transform: translate(0,0); }
}
@keyframes leftIn {
	0%   { opacity: 0; transform: translateX(-10%) }
	100% { opacity: 1;}
  }

.tb_block,
.sm_block{
	display: none;
}

.mb40{
	margin-bottom: 40px;
}

.ta_center{
	text-align: center;
}
.f_right{
	float: right;
}
.f_left{
	float: left;
}
.c_both{
	clear: both;
}
.img_line{
	margin: 5px;
	padding: 2px;
	border: 1px solid #ccc;
}
.icon{
	margin: 0 5px;
	vertical-align: middle;
}

#pagetop{
	position: relative;
	display: block;
	width:45px;
	height:45px;
	text-align: center;
	z-index: 100;
}
#pagetop::before{
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: #ff742f;
	border: 2px solid #ff742f;
	border-radius: 100%;
	vertical-align: middle;
	transition: all ease .3s;
	transform: scale(0.25);
}
#pagetop::after{
	content: "";
	position: absolute;
	left: 55%;
	top: 33%;
    width: 8px;
    height: 8px;
    border-top: 2px solid #ff742f;
    border-right: 2px solid #ff742f;
    -webkit-transform: rotate(-45deg) translate(-50%,-50%);
    transform: rotate(-45deg) translate(-50%,-50%);
	transition: all ease .3s;
	opacity: 0;
}
#pagetop:hover::before{
    transform: scale(1.2);
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
#pagetop:hover::after{
	opacity: 1;
}

/* print setting */
@media print {
body {
top:0 !IMPORTANT;
left:0 !IMPORTANT;
}
header{
	position: absolute;
}
.midnightHeader.default .midnightInner,
.midnightHeader.white .midnightInner{
	display: none;
}
}

/* 202408 */
#bn_contact {
	margin-top: 40px;
	transition: all ease .5s;
}

#bn_contact:hover {
	transform: translateY(-5px);
	opacity: 0.7;
}