@charset "UTF-8";
body {
  background: #fff;
  color: #000;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
img {
  width: 100%;
}
.pc {
  display: none !important;
}
.sp {
  display: block !important;
}
a {
  transition: 0.3s all;
}
.inner, .mv_inner {
  width: 88vw;
  margin: 0 auto;
}
.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.fc_og {
	color: #FF7F00;
}
@media screen and (min-width:1140px) {
  .pc {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
  a:hover {
    opacity: .7;
  }
  .flex_pc {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
  }
  .inner {
    width: 1139px;
  }
  a[href^="tel:"] {
    pointer-events: none;
  }
}
@media (min-width:1140px) and (max-width:1399px) {
	.inner {
		margin: 0 5px;
		width: auto;
		max-width: 1139px;
	}
}
@media screen and (min-width:1400px) {
  .inner {
    width: 1400px;
  }
}
/*===================
header
=====================*/
#header {
  margin: 0 auto;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 1000;
  width: 100%;
}
#header .h_logo {
	font-size: 2.1vw;
}
#header .h_logo span {
	display: block;
	letter-spacing: 0;
}
#header .h_logo img {
	width: 28.4vw;
}
#header {
  position: fixed;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0);
  background: rgba(255,255,255,0.9);
}
#sp_nav #sp_menu {
	margin: 0 28px 0 0;
}
#sp_nav #sp_menu li a {
  font-weight: 500;
	font-size: 12px;
	display: block;
	letter-spacing: 0;
}

#header .h_nav #sp_menu {
	justify-content: space-evenly;
	gap: 20px;
}
#sp_nav .h_link {
	display: flex;
	justify-content: space-between;
	gap: 5px;
}
#sp_nav .h_link p {
	
}
#sp_nav .h_link img {
	display: none;
}
#header .inner {
    width: 100%;
  }
  #header .h_nav {
	display: flex;
	  justify-content: space-between;
  }
@media screen and (min-width:1139px) {
	
#header .h_logo {
	font-size: 12px;
}
#header .h_logo span {
	margin: 0 0 10px;
}
	
#header .inner {
    padding: 22px 0;
  }
#header .h_logo img {
	width: 155px;
}
}
@media screen and (min-width:1600px) {
	
	#header .inner {
		width: 1600px;
	}
  #header .h_nav #sp_menu {
  }
#sp_nav .h_link p a {
	background-color: #fff;
    padding: 15px 46px 15px 33px;
	border-radius: 50px;
	position: relative;
	font-size: 14px;
	display: block;
}
#sp_nav .h_link p a::before {
	position: absolute;
	content: "";
	display: block;
	background-color: #111;
	border-radius: 50px;
	width: 17px;
	height: 17px;
	top: 50%;
	transform: translate(0,-50%);
	right: 20px;
}
#sp_nav .h_link p a::after {
	position: absolute;
	content: "";
	display: block;
	background: url("../img/arrow.svg") center center no-repeat;
	background-size: 100%;
	border-radius: 50px;
	width: 7px;
	height: 7px;
	top: 50%;
	transform: translate(0,-50%);
	right: 25px;
}
#sp_nav .h_link .tel a {
	border: 2px solid #707070;
    color: #111;
}
#sp_nav .h_link .mail a {
	border: 2px solid #FFAC0F;
    color: #FF7F00;
}
#sp_nav .h_link .mail a::before {
	background-color: #FFAC0F;
}
#sp_nav .h_link .line a {
	border: 2px solid #06C755;
    color: #06C755;
}
#sp_nav .h_link .line a::before {
	background-color: #06C755;
}
}
@media screen and (max-width:1139px) {
  #header {
    padding: 2vw 0;
    height: 14vw;
    width: 100%;
    top: 0;
  }
  #header .h_logo {
    padding: 0 3.2vw 0;
  }
	#header .h_nav {
		display: block;
	}
#sp_nav .h_link p a {
	background-color: #fff;
    padding: 15px 46px 15px 33px;
	border-radius: 100px;
	position: relative;
	font-size: 4.2vw;
	display: block;
}
#sp_nav .h_link p a::before {
	position: absolute;
	content: "";
	display: block;
	background-color: #111;
	border-radius: 50px;
	width: 4.5vw;
	height: 4.5vw;
	top: 50%;
	transform: translate(0,-50%);
	right: 4vw;
}
#sp_nav .h_link p a::after {
	position: absolute;
	content: "";
	display: block;
	background: url("../img/arrow.svg") center center no-repeat;
	background-size: 100%;
	border-radius: 50px;
	width: 1.8vw;
	height: 1.8vw;
	top: 50%;
	transform: translate(0,-50%);
	right: 5.3vw;
}
#sp_nav .h_link .tel a {
	border: 2px solid #707070;
    color: #111;
}
#sp_nav .h_link .mail a {
	border: 2px solid #FFAC0F;
    color: #FF7F00;
}
#sp_nav .h_link .mail a::before {
	background-color: #FFAC0F;
}
#sp_nav .h_link .line a {
	border: 2px solid #06C755;
    color: #06C755;
}
#sp_nav .h_link .line a::before {
	background-color: #06C755;
}
}
@media screen and (max-width:750px) {
  #header {
    padding: 7px 0;
    height: 13.5vw;
  }
}

@media screen and (min-width:1140px) and (max-width:1599px) {
	#header .h_logo span {
		letter-spacing: 0;
    	font-size: 10px;
	}
	#header .inner {
		width: 1139px;
	}
	#header .h_nav #sp_menu {
		gap:15px;
	}
	#header .h_nav #sp_menu li a {
        font-size: 11px;
		letter-spacing: 0;
    }
	#sp_nav .h_link {
		gap:0;
	}
  #sp_nav .h_link p , #sp_nav .h_link p a {
	width: 54px;
    height: 54px;
  }
	#sp_nav .h_link p a {
		display: block;
		position: relative;
	}
	#sp_nav .h_link p a img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	#sp_nav .h_link p.tel a {
	background-color: #707070;
  }
	#sp_nav .h_link p.tel a img {
	width: 23px;
		height: 30px;
  }
	#sp_nav .h_link p.mail a {
	background-color: #FFAC1F;
  }
	#sp_nav .h_link p.mail a img {
	width: 29px;
		height: 22px;
  }
	#sp_nav .h_link p.line a {
	background-color: #04C755;
  }
	#sp_nav .h_link p.line a img {
	width: 36px;
		height: 34px;
  }
  #sp_nav .h_link a img {
	display: block;
  }
  #sp_nav .h_link a span {
	display: none;
  }
	
}
/*========
sp_btn
==========*/
@media screen and (max-width:1139px) {
  #sp_nav .nav_wrap.flex_pc,
	#sp_nav #sp_menu.flex_pc,
	.h_nav_contact.flex_pc {
    display: block;
  }
  .openbtn {
    display: block;
    position: absolute;
    cursor: pointer;
    width: 7.2vw;
    height: 4vw;
    top: 4.5vw;
    right: 4vw;
    z-index: 9999;
  }
  .openbtn span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 0;
    height: 1px;
    background: #707070;
    width: 100%;
    z-index: 99;
  }
  .openbtn.active span {
    background: #707070
  }
  .openbtn span:nth-of-type(1) {
    top: 0;
  }
  .openbtn span:nth-of-type(2) {
    top: 2.2vw;
  }
  .openbtn span:nth-of-type(3) {
    top: 4.5vw;
  }
  .openbtn.active span:nth-of-type(1) {
    top: 5px;
    left: 0;
    transform: translateY(6px) rotate(-45deg);
    width: 100%;
    background: #B28A62;
  }
  .openbtn.active span:nth-of-type(2) {
    opacity: 0;
  }
  .openbtn.active span:nth-of-type(3) {
    top: 18px;
    left: 0;
    transform: translateY(-6px) rotate(45deg);
    width: 100%;
    background: #B28A62;
  }
  #sp_nav {
    position: fixed;
    z-index: 999;
    top: -520vh;
    right: 0;
    width: 100%;
    transition: all 0.6s;
    height: 100vh;
  }
  #sp_nav .nav_wrap {
    padding: 0 10vw;
    height: 100vh;
  }
  #sp_nav.panelactive {
    top: 0;
    background: url("../img/sp/nav_bg.jpg") center top no-repeat;
	  background-size: cover;
  }
  #sp_nav.panelactive #sp_menu {
    width: 85%;
    margin: 0 auto;
  }
  #sp_nav #sp_menu {
    padding: 12vw 5.8vw 0;
  }
  #sp_nav #sp_menu li {
    text-align: center;
  }
  #sp_nav #sp_menu li a {
    font-size: 2.4vw;
    font-weight: 400;
    margin: 0 0 6vw;
    display: block;
  }
	#sp_nav .h_link {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	#sp_nav .h_link p {
		width: 42.6vw;
		margin: 0 1.3vw 2.6vw;
	}
	#sp_nav .h_link p a {
	  background-color: #fff;
      padding: 4.2vw 2vw 4.2vw 8.8vw;
	  border-radius: 100px;
	  font-size: 3vw;
      display: block;
	}
}
@media screen and (max-width:750px) {
  .openbtn {
    right: 5vw;
    top: 4.5vw;
  }
  #sp_nav #sp_menu li {
    text-align: center;
  }
  #sp_nav #sp_menu li a {
    font-size: 4.2vw;
    font-weight: 400;
    padding: 0 0 1.3vw;
    margin: 0 0 8vw;
    display: block;
  }
	#sp_nav .h_link p a {
      padding: 4.2vw 3vw;
	  border-radius: 50px;
	  font-size: 4.2vw;
	}
}
@media screen and (max-width:480px) {
  #sp_nav.panelactive {
    top: 0;
  }
}




/*===================
footer
=====================*/
#footer {
  background-color: #4B4B4B;
  color: #fff;
}

#footer .f_link{
	display: flex;
	justify-content: space-between;
	gap: 5px;
}
#footer .f_link p {
	
}
#footer .f_link img {
	display: none;
}

#footer .f_link p a {
	background-color: #fff;
    padding: 15px 46px 15px 33px;
	border-radius: 50px;
	position: relative;
	font-size: 14px;
	display: block;
}
#footer .f_link p a::before {
	position: absolute;
	content: "";
	display: block;
	background-color: #111;
	border-radius: 50px;
	width: 17px;
	height: 17px;
	top: 50%;
	transform: translate(0,-50%);
	right: 20px;
}
#footer .f_link p a::after {
	position: absolute;
	content: "";
	display: block;
	background: url("../img/arrow.svg") center center no-repeat;
	background-size: 100%;
	border-radius: 50px;
	width: 7px;
	height: 7px;
	top: 50%;
	transform: translate(0,-50%);
	right: 25px;
}
#footer .f_link .tel a {
	border: 2px solid #707070;
    color: #111;
}
#footer .f_link .mail a {
	border: 2px solid #FFAC0F;
    color: #FF7F00;
}
#footer .f_link .mail a::before {
	background-color: #FFAC0F;
}
#footer .f_link .line a {
	border: 2px solid #06C755;
    color: #06C755;
}
#footer .f_link .line a::before {
	background-color: #06C755;
}
#footer .f_link_wrap .txt {
	text-align: center;
	margin: 0 0 20px;
}
@media screen and (min-width:1140px) {
  #footer > .inner {
    padding: 97px 0 65px;
  }
  #footer .inner .flex_pc {
    align-items: flex-start;
  }
   #footer .f_logo {
    width: 233px;
    height: auto;
    margin: 0 292px 0 0;
  }
  #footer .f_logo {
    width: 254px;
    margin: 0 40px 0 0;
  }
  #footer .f_logo span {
    font-size: 12px;
	display: block;
	  margin: 0 0 5px;
  }
  #footer .f_logo img {
    width: 175px;
  }
  #footer .f_nav ul {
    width: 147px;
  }
  #footer .f_nav ul.f_link01 {
    margin: 0 40px 0 0;
  }
  #footer .f_nav ul.f_link02 {
    margin: 0 40px 0 0;
  }
  #footer .f_nav ul li {
    font-size: 15px;
    margin: 0 0 14px;
  }
	#footer .f_link p a {
		padding: 10px 26px 10px 20px;
        font-size: 14px;
        width: 140px;
        height: 50px;
	}
	#footer .f_link p a::before {
		right: 10px;
	}
	#footer .f_link p a::after {
		right: 15px;
	}
}
@media screen and (min-width:1400px) {
  #footer .f_logo {
    width: 285px;
    height: auto;
    margin: 0 357px 0 0;
  }
  #footer .f_logo {
    width: 310px;
    margin: 0 93px 0 0;
  }
  #footer .f_logo span {
    font-size: 13px;
	display: block;
	  margin: 0 0 5px;
  }
  #footer .f_logo img {
    width: 150px;
  }
  #footer .f_nav ul {
    width: 180px;
  }
  #footer .f_nav ul.f_link01 {
    margin: 0 80px 0 0;
  }
  #footer .f_nav ul.f_link02 {
    margin: 0 100px 0 0;
  }
  #footer .f_nav ul li {
    font-size: 18px;
    margin: 0 0 17px;
  }
	#footer .f_link p a {
		padding: 15px 26px 15px 20px;
        font-size: 16px;
        width: 160px;
        height: 60px;
	}
}

@media screen and (max-width:1139px) {
	#footer {
		padding: 10.66vw 0 25vw;
	}
	#footer .f_logo {
		text-align: center;
		margin: 0 0 13.3vw;
		font-size: 2.4vw;
	}
	#footer .f_logo img {
		width: 47.6vw;
		display: block;
		margin: 2.6vw auto 0;
	}
	#footer .f_link_wrap .txt {
		margin: 0 0 5.3vw;
	}
	#footer .f_link_wrap .f_link {
		flex-wrap: wrap;
		justify-content: center;
		gap: 2.6vw;
	}
	#footer .f_link_wrap .f_link p {
		width: 42.66vw;
	}
	#footer .f_link_wrap .f_link p a {
		font-size: 4.2vw;
		border-radius: 100px;
		padding: 4.2vw 5.8vw;
	}
	#footer .f_link p a::before {
		width: 4.5vw;
		height: 4.5vw;
		right: 3.7vw;
	}
	#footer .f_link p a::after {
		width: 1.86vw;
		height: 1.86vw;
		right: 5vw;
	}
}
.fix_bnr {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	background-color: #fff;
	z-index: 20;
	
}
.fix_bnr .tit {
	font-size: 3vw;
	text-align: center;
}
.fix_bnr .fix_link {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 13.3vw;
}
.fix_bnr .fix_link p {
	width: 33.3333%;
	text-align: center;
	height: 13.3vw;
	position: relative;
}
.fix_bnr .fix_link p a {
	display: block;
}
.fix_bnr .fix_link p a img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.fix_bnr .fix_link p.tel {
	background-color: #707070;
}
.fix_bnr .fix_link p.tel img {
	width: 6.66vw;
}
.fix_bnr .fix_link p.mail {
	background-color: #FFAC1F;
}
.fix_bnr .fix_link p.mail img {
	width: 8.5vw;
}
.fix_bnr .fix_link p.line {
	background-color: #04C755;
}
.fix_bnr .fix_link p.line img {
	width: 10.6vw;
}
/*===================

top

=====================*/
/*===================
mv
=====================*/
.top .mv {
  background: url("../img/sp/mv_bg.png") center top 13.5vw no-repeat;
  background-size: contain;
}
.top .mv .inner {
  position: relative;
}
.top .mv .fc_og {
	color: #FFAC0F;
}
.top .mv .sub_tit span {
	display: inline-block;
	background-color: #FFAC0F;
	color: #fff;
	border-radius: 100px;
	letter-spacing: 0.3em;
}
.top .mv .txt {
	position: absolute;
	right: 0;
}
@media screen and (min-width: 1140px) {
	.top .mv {
	  padding: 170px 0 630px;
	  background: url("../img/mv_bg.png") center top 100px no-repeat;
	  background-size: auto 1058px;
		overflow: hidden;
	}
	.top .mv .inner {
		width: 1139px;
	}
	.top .mv h1 {
		width: 604px;
	}
	.top .mv .sub_tit {
		margin: 0 0 0 2.5em;
	}
	.top .mv .sub_tit span {
		padding: 10px 30px;
		font-size: 21.32px;
	}
	.top .mv .txt {
		position: absolute;
		right: 0;
		top: 33px;
		width: 207px;
	}
}
@media screen and (min-width:1400px) {
	.top .mv {
	  background: url("../img/mv_bg.png") center top 40px no-repeat;
	  background-size: auto 1421px;
		overflow: hidden;
		padding: 100px 0 730px;
		
	}
	.top .mv .inner {
		width: 1400px;
	}
	.top .mv h1 {
		width: 737px;
		padding: 82px 0 0;
	}
	.top .mv .sub_tit {
		margin: 0 0 0 2.5em;
	}
	.top .mv .sub_tit span {
		font-size: 26px;
		padding: 8px 30px 10px;
	}
	.top .mv .txt {
		right: 0;
		width: 253px;
		top: 123px;
	}
}
@media screen and (max-width:1139px) {
	.top .mv {
	  background: url("../img/sp/mv_bg.png") center top no-repeat;
	  background-size: contain;
		height: 158vw;
	}
	.top .mv {
		margin: 19vw 0 0;
	}
	.top .mv .sub_tit span {
		text-align: center;
		font-size: 3.4vw;
		padding: 1.6vw 5vw;
	}
	.top .mv h1 {
		width: 73.06vw;
	}
	.top .mv .txt {
		top: 49vw;
		width: 20.8vw;
	}
}

/*===================
top_common
=====================*/
.sec .tit_pt01 {
	text-align: center;
	letter-spacing: 0.1em;
}
.sec .tit_pt01 .tit_en {
	text-align: center;
	display: block;
	line-height: 0;
}

@media screen and (min-width:1400px) {
	.sec .tit_pt01 {
		font-size: 41px;
	}
}
@media screen and (min-width:1140px) {
	.sec .tit_pt01 {
		font-size: 50px;
	}
	.sec .tit_pt01 .tit_en {
		margin: 10px auto 0;
	}
}
@media screen and (max-width:1139px) {
	.sec .tit_pt01 {
		font-size: 6vw;
	}
	.sec .tit_pt01 .tit_en {
		margin: 10px auto 0;
	}
}

/*===================
nayami
=====================*/

/* .nayami_wrap01 */
#nayami .nayami_wrap01 h1 {
	text-align: center;
	letter-spacing: 0.1em;
	font-size: 6.4vw;
}
#nayami .nayami_wrap01 h1 span {
	font-weight: 600;
}
	
#nayami .nayami_list li {
	width: 60%;
}	
@media screen and (min-width:1140px) {
	#nayami .nayami_wrap01 h1 {
		font-size: 48px;
		margin: 0 0 34px;
	}
	#nayami .nayami_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#nayami .nayami_list li {
		width: 375px;
	}
		
}
@media screen and (min-width:1400px) {
	#nayami .nayami_wrap01 h1 {
		font-size: 58px;
		margin: 0 0 42px;
	}
	#nayami .nayami_list {
		
	}
	#nayami .nayami_list li {
		width: 466px;
	}
		
}
@media screen and (max-width:1139px) {
	
	#nayami .nayami_list {
		position: relative;
		height: 153vw;
	}
	#nayami .nayami_list li {
		position: absolute;
	}
	#nayami .nayami_list li:first-of-type {
		top: 0;
		left: -5vw;
	}
	#nayami .nayami_list li:nth-of-type(2) {
		top: 20vw;
		right: -3vw;
	}
	#nayami .nayami_list li:nth-of-type(3) {
		top: 42vw;
		left: -5vw;
	}
	#nayami .nayami_list li:nth-of-type(4) {
		top: 62vw;
		right: -5vw;
	}
	#nayami .nayami_list li:nth-of-type(5) {
		top: 82vw;
		left: -5vw;
	}
	#nayami .nayami_list li:nth-of-type(6) {
		top: 104vw;
		right: -3vw;
	}
}
	
/* .nayami_wrap02 */
#nayami .nayami_wrap02 {
	text-align: center;
	height: 215.2vw;
	background: url("../img/sp/nayami_bg01.png") center top no-repeat;
	background-size: 100%;
	overflow: hidden;
	padding: 28vw 0 20vw;
}
#nayami .nayami_wrap02 h2 {
	letter-spacing: 0.1em;
	font-size: 5.2vw;
	margin: 0 0 10.66vw;
}
#nayami .nayami_wrap02 .txt {
	letter-spacing: 0.1em;
	line-height: 2;
	font-size: 3.8vw;
	text-align: left;
}
#nayami .nayami_wrap02 .txt strong {
	font-weight: 600;
}
@media screen and (min-width:1140px) {
	
	#nayami .nayami_wrap02 {
		height: 785px;
		background: url("../img/nayami_bg01.png") center top no-repeat;
		background-size: 1574px 785px;
		overflow: hidden;
		padding: 283px 0 205px;
	}
	
	#nayami .nayami_wrap02 h2 {
		font-size: 36px;
		margin: 0 0 38px;
	}
	#nayami .nayami_wrap02 .txt {
		font-size: 14px;
		text-align: center;
	}
}

@media screen and (min-width:1400px) {
	
	#nayami .nayami_wrap02 {
		height: 958px;
		background: url("../img/nayami_bg01.png") center top no-repeat;
		background-size: 1920px 958px;
		overflow: hidden;
		padding: 283px 0 205px;
	}
	
	#nayami .nayami_wrap02 h2 {
		font-size: 45px;
		margin: 0 0 47px;
	}
	#nayami .nayami_wrap02 .txt {
		font-size: 18px;
	}
}
@media screen and (max-width:1139px) {
	
	#nayami .nayami_wrap02 {
		margin: 0 0 16vw;
	}
}


/* .nayami_wrap03 */

#nayami .nayami_wrap03 {
	
}

#nayami .nayami_wrap03 .inner .tit {
	text-align: center;
	border: 4px solid #FFAC0F;
	border-radius: 20px;
}
#nayami .nayami_wrap03 .inner .tit dd span {
	font-weight: 600;
}
#nayami .nayami_wrap03 .inner .desc {
	line-height: 2;
	letter-spacing: 0.16em;
}
@media screen and (min-width:1140px) {
	#nayami .nayami_wrap03 .inner {
		padding: 100px 0;
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 922px;
	}
	#nayami .nayami_wrap03 .inner .tit {
		padding: 29px;
		font-size: 22px;
	}
	#nayami .nayami_wrap03 .inner .tit dt {
		padding: 0 0 18px;
		margin: 0 0 18px;
		border-bottom: 1px solid #FFAC0F;
	}
	#nayami .nayami_wrap03 .inner .desc {
		font-size: 27px;
	}
}

@media screen and (min-width:1400px) {
	#nayami .nayami_wrap03 .inner {
		width: 1125px;
	}
	#nayami .nayami_wrap03 .inner .tit {
		padding: 36px;
		font-size: 28px;
	}
	#nayami .nayami_wrap03 .inner .tit dt {
		border-bottom: 1px solid #FFAC0F;
		padding: 0 0 22px;
		margin: 0 0 22px;
	}
	#nayami .nayami_wrap03 .inner .desc {
		font-size: 33px;
	}
}

@media screen and (max-width:1139px) {
	#nayami .nayami_wrap03 {
		margin: 0 0 16vw;
	}
	#nayami .nayami_wrap03 .inner .tit {
		display: flex;
		justify-content: space-around;
		align-items: center;
		padding: 5.86vw 4.86vw;
		font-size: 4.53vw;
		text-align: center;
		margin: 0 0 3vw;
	}
	#nayami .nayami_wrap03 .inner .tit dt {
		width: 26vw;
		border-right: 1px solid #FFAC0F;
	}
	#nayami .nayami_wrap03 .inner .tit dd {
		width: 44vw;
	}
	#nayami .nayami_wrap03 .inner .desc {
		font-size: 4.2vw;
	}
	
}

/*===================
contact_wrap
=====================*/
.contact_wrap {
	background-color: #F7F7F7;
}
.contact_wrap .tit_wrap .free {
	background-color: #FFAC0F;
	color: #fff;
	text-align: center;
	letter-spacing: 0.16em;
}
.contact_wrap .tit_wrap .sub_tit {
	margin: 0 auto;
}
.contact_wrap .tit_wrap .tit {
	margin: 0 auto;
}
.contact_wrap .tit_wrap .txt {
	text-align: center;
}
.contact_wrap .cv_link_wrap .cv_link .txt {
	font-weight: 600;
	 text-shadow : 
       3px  3px 0px #ffffff,
      -3px  3px 0px #ffffff,
       3px -3px 0px #ffffff,
      -3px -3px 0px #ffffff,
       3px  0px 0px #ffffff,
       0px  3px 0px #ffffff,
      -3px  0px 0px #ffffff,
       0px -3px 0px #ffffff; 
}

.contact_wrap .cv_link_wrap ul li a {
	background-color: #fff;
	border-radius: 30px;
	display: block;
	position: relative;
	box-shadow: 5px 5px 10px -6px rgba(0,0,0,0.2);
}

.contact_wrap .cv_link_wrap ul li a::before {
	position: absolute;
	content: "";
	display: block;
	background-color: #111;
	border-radius: 50px;
	width: 17px;
	height: 17px;
	top: 50%;
	transform: translate(0, -50%);
	right: 20px;
}
.contact_wrap .cv_link_wrap ul li a::after {
	position: absolute;
	content: "";
	display: block;
	background: url(../img/arrow.svg) center center no-repeat;
	background-size: 100%;
	border-radius: 50px;
	width: 7px;
	height: 7px;
	top: 50%;
	transform: translate(0, -50%);
	right: 25px;
}

.contact_wrap .cv_link_wrap ul li:first-of-type a {
	color: #FFAC0F;
}
.contact_wrap .cv_link_wrap ul li:first-of-type a::before {
	background-color: #FFAC0F;
}


.contact_wrap .cv_link_wrap ul li:nth-of-type(2) a {
	color: #06C755;
}
.contact_wrap .cv_link_wrap ul li:nth-of-type(2) a::before {
	background-color: #06C755;
}

@media screen and (min-width:1140px) {
	
	.contact_wrap .bg {
		width: 100%;
		margin: 0 auto;
		background-image: url("../img/cv_bg.jpg") ;
		background-position: right -190px center;
		background-repeat: no-repeat;
		background-size: contain;
	}
	.contact_wrap .inner {
		padding: 40px 0 60px;
	}
	.contact_wrap .tit_wrap {
		width: 754px;
		padding: 5px;
		font-size: 24px;
		margin: 0 0 24px;
	}
	.contact_wrap .tit_wrap .cv_link_wrap {
		width: 934px;
	}
	.contact_wrap .tit_wrap .free {
	}
	.contact_wrap .tit_wrap .sub_tit {
		width: 237px;
		margin: 0 auto 18px;
	}
	.contact_wrap .tit_wrap .tit {
		width: 591px;
		margin: 0 auto 18px;
	}
	.contact_wrap .cv_link_wrap {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 935px;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .tel {
		width: 270px;
		margin: 0 0 10px;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .txt {
		font-size: 13px;
		letter-spacing: 0.2em;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .txt small {
		font-size: 0.87em;
		letter-spacing: 0;
	}
	.contact_wrap .cv_link_wrap .cv_link .txt {
		text-align: center;
		font-size: 23px;
		margin: 0 0 10px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul {
		display: flex;
		justify-content: space-between;
		gap: 16px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul li a {
		border-radius: 60px;
		width: 295px;
		padding: 16px 78px 16px 24px;
		font-size: 30px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul li a::before {
		width: 32px;
		height: 32px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul li a::after {
		width: 15px;
		height: 15px;
		right: 30px;
	}
}

@media screen and (min-width:1400px) {
	.contact_wrap .bg {
		width: 100%;
		margin: 0 auto;
		background-image: url("../img/cv_bg.jpg") ;
		background-position: right -190px center;
		background-repeat: no-repeat;
		background-size: contain;
	}
	.contact_wrap .inner {
		padding: 40px 0 60px;
	}
	.contact_wrap .tit_wrap {
		width: 920px;
		font-size: 30px;
		margin: 0 0 30px;
	}
	.contact_wrap .tit_wrap .cv_link_wrap {
		width: 1140px;
	}
	.contact_wrap .tit_wrap .free {
	}
	.contact_wrap .tit_wrap .sub_tit {
		width: 290px;
		margin: 0 auto 22px;
	}
	.contact_wrap .tit_wrap .tit {
		width: 721px;
		margin: 0 auto 22px;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .tel {
		width: 330px;
		margin: 0 0 13px;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .txt {
		font-size: 16px;
	}
	.contact_wrap .cv_link_wrap {
		width: 1140px;
	}
	.contact_wrap .cv_link_wrap .cv_link .txt {
		font-size: 28px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul {
		gap: 20px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul li a {
		width: 360px;
		padding: 25px 96px 25px 30px;
		border-radius: 60px;
		font-size: 38px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul li a::before {
		width: 40px;
		height: 40px;
	}
	.contact_wrap .cv_link_wrap .cv_link ul li a::after {
		width: 19px;
		height: 19px;
		right: 30px;
	}
}

@media screen and (min-width:1600px) { 
	.contact_wrap .bg {
		width: 100%;
		margin: 0 auto;
		background-image: url("../img/cv_bg.jpg") ;
		background-position: right center;
		background-repeat: no-repeat;
		background-size: contain;
	}
}
@media screen and (max-width:1139px) {
	.contact_wrap {
		padding: 0 0 10.66vw;
	}
	.contact_wrap .inner {
		width: 100%;
	}
	.contact_wrap .tit_wrap .free {
		font-size: 6.4vw;
		margin: 0 0 8vw;
	}
	.contact_wrap .tit_wrap .tit {
		width: 74.66vw;
		margin: 0 auto 5.33vw;
	}
	.contact_wrap .tit_wrap .sub_tit {
		width: 62.93vw;
		margin: 0 auto 2.66vw;
	}
	.contact_wrap .tit_wrap .txt {
		font-size: 5.6vw;
		line-height: 1.4;
		margin: 0 auto 5.33vw;
	}
	.contact_wrap .cv_link_wrap .tel_wrap {
		margin: 0 0 8vw;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .tel {
		width: 55.2vw;
		margin: 0 auto 2.66vw;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .txt {
		text-align: center;
		font-size: 3.2vw;
		line-height: 1.4;
	}
	.contact_wrap .cv_link_wrap .tel_wrap .txt small {
		text-align: center;
		font-size: 2.66vw;
	}
	.contact_wrap .cv_link_wrap .cv_link .txt {
		font-size: 3.5vw;
		margin: 0 auto 2.66vw;
		text-align: center;
	}
	.contact_wrap .cv_link_wrap ul li a {
		width: 64vw;
		margin: 0 auto 2.66vw;
		padding: 3.2vw 7.2vw;
		font-size: 6.4vw;
		border-radius: 100px;
	}
	.contact_wrap .cv_link_wrap ul li a::before {
		width: 5.3vw;
    	height: 5.3vw;
		right: 5.3vw;
	}
	.contact_wrap .cv_link_wrap ul li a::after {
		width: 2.6vw;
    	height: 2.6vw;
		right: 6.5vw;
	}
	.contact_img {
		margin: 0 0 16vw;
	}
}


/*===================
f_contact
=====================*/
.f_contact {
	background: url("../img/sp/f_img.png") center bottom no-repeat;
	background-size: 100%;
	position: relative;
	padding: 0 0 43.73vw;
}

.f_contact .inner {
	padding: 16vw 4.8vw;
}

.f_contact .box {
	background: url("../img/sp/f-cv_bg.png") center center no-repeat #fff;
	background-size: cover;
	margin: 0 0 0 auto;
	border-radius: 40px;
}

.f_contact .box .tit .txt {
	text-align: center;
	letter-spacing: 0.1em;
}
@media screen and (min-width:1140px) {
	
	.f_contact {
		background: url("../img/f_img.png") center bottom no-repeat;
		background-size: 100%;
		position: relative;
		padding: 0 0 322px;
	}
	.f_contact .inner {
		position: relative;
		padding: 90px 0 0;
	}
	.f_contact .icon {
		width: 223px;
		position: absolute;
		left: 0;
		top: 35px;
	}
	.f_contact .box {
		width: 1044px;
		background: url("../img/f-cv_bg.png") center center no-repeat #fff;
		background-size: cover;
		padding: 42px 55px 42px 65px;
		margin: 0 0 0 auto;
		border-radius: 40px;
	}
	.f_contact .box .tit .sub_tit {
		width: 237px;
		margin: 0 auto 10px;
	}
	.f_contact .box .tit .txt {
		font-size: 25px;
		margin: 0 0 36px;
	}
}



@media screen and (min-width:1400px) {
	
	.f_contact  {
		padding: 0 0 393px;
	}
	.f_contact .inner {
		padding: 110px 0 0;
	}
	.f_contact .icon {
		width: 272px;
		position: absolute;
		left: 0;
		top: 43px;
	}
	.f_contact .box {
		width: 1274px;
		padding: 52px 68px 52px 80px;
		border-radius: 40px;
	}
	.f_contact .box .tit .sub_tit {
		width: 290px;
	}
	.f_contact .box .tit .txt {
		font-size: 31px;
		margin: 0 0 45px;
	}

}


@media screen and (max-width:1139px) {
	
	.f_contact .tit {
		margin: 0 0 22.4vw;
	}
	.f_contact .tit .sub_tit {
		width: 62.9vw;
		margin: 0 auto 2.66vw;
	}
	.f_contact .tit .txt {
		font-size: 5.6vw;
		text-align: center;
		letter-spacing: 0.1em;
	}
	.f_contact .box {
		padding: 14.93vw 4.8vw 12.8vw;
	}
	.f_contact .box .cv_link_wrap {
		position: relative;
	}
	.f_contact .box .cv_link_wrap .icon {
		position: absolute;
		top: -33vw;
		left: 50%;
		transform: translate(-50%,0);
		width: 27.7vw;
	}
}

/*===================
mission
=====================*/


#mission .inner h2 {
	text-align: center;
	letter-spacing: 0.1em;
	line-height: 1.8;
}
#mission .inner .txt {
	line-height: 2.2;
	text-align: center;
}
#mission .inner .tit_pt01 .tit_en {
	display: block;
}

#mission .img_wrap li {
	position: relative;
}
@media screen and (min-width:1140px) {
	#mission .inner {
		padding: 82px 0;
	}
	#mission .inner .tit_pt01 {
		margin: 0 0 41px;
	}
	#mission .inner .tit_pt01 .tit_en {
		width: 118px;
	}
	#mission .inner h2 {
		font-size: 34px;
		margin: 0 0 57px;
	}
	#mission .inner .txt {
		font-size: 15px;
		margin: 0 0 32px;
	}
	#mission .img_wrap {
		width: 97%;
		height: 23vw;
		margin: 0 auto 150px;
		display: flex;
		justify-content: space-between;
		gap:20px;
	}
	#mission .img_wrap li:first-of-type {
		top: 0;
		width: 25vw;
	}
	#mission .img_wrap li:nth-of-type(2) {
		top: 8vw;
		width: 20vw;
	}
	#mission .img_wrap li:nth-of-type(3) {
		top: 1vw;
		width: 20vw;
	}
	#mission .img_wrap li:last-of-type {
		top: 3.8vw;
		width: 25vw;
	}
}

@media screen and (min-width:1400px) {
	#mission .inner {
		padding: 100px 0;
	}
	#mission .inner .tit_pt01 {
		margin: 0 0 50px;
	}
	#mission .inner .tit_pt01 .tit_en {
		width: 145px;
	}
	#mission .inner h2 {
		font-size: 42px;
		margin: 0 0 70px;
	}
	#mission .inner .txt {
		font-size: 18px;
		margin: 0 0 40px;
	}
	#mission .img_wrap {
		margin: 0 auto 185px;
	}
}

@media screen and (max-width:1139px) {
	#mission {
		margin: 0 0 34vw;
	}
	#mission .inner .tit_pt01 {
		margin: 0 0 8vw;
	}
	#mission .inner .tit_pt01 .tit_en {
		width: 23.2vw;
	}
	#mission .inner h2 {
		font-size: 5.3vw;
		margin: 0 0 16vw;
	}
	#mission .inner .txt {
		font-size: 4.2vw;
		text-align: left;
		margin: 0 0 16vw;
	}
	#mission .inner {
		margin: 0 auto 10.6vw;
	}
	#mission .img_wrap {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#mission .img_wrap li:first-of-type {
		top: 0;
		left: 4.8vw;
		width: 40vw;
	}
	#mission .img_wrap li:nth-of-type(2) {
		top: 8vw;
		right: 14.6vw;
		width: 32vw;
	}
	#mission .img_wrap li:nth-of-type(3) {
		top: 8.5vw;
		left: 16vw;
		width: 32vw;
	}
	#mission .img_wrap li:last-of-type {
		top: 9vw;
		right: 4.8vw;
		width: 38vw;
	}
}
/*===================
program
=====================*/
#program {
	position: relative;
	background: url("../img/sp/program_bg01.png") center top no-repeat;
	background-size: 100%;
	padding: 16.66vw 0 0;
}
#program::before {
	position: absolute;
	content: "";
	display: block;
	background-color: #FFAC0F;
	width: 1px;
	height: 21.3vw;
    top: -13vw;
	left: 50%;
	transform: translate(-50%,0);
}
#program .program_wrap {
	background-color: #FAFAFA;
	padding: 0 0 1vw;
}

#program .program_cont {
	position: relative;
}
#program .program_cont::before {
	position: absolute;
	display: block;
	content: "";
	background: url("../img/sp/program_bg02.png") center center no-repeat;
	background-size: 100%;
	width: 84vw;
    height: 93vw;
    top: 74vw;
	right: 0;
	z-index: 1;
}
#program .program_cont .img{
	position: relative;
	z-index: 10;
}
#program .program_cont .desc h2::before {
	position: absolute;
	display: block;
	content: "";
	background: url("../img/sp/program_icon01.png") center center no-repeat ;
	background-size: 100%;
	width: 58vw;
    height: 58vw;
    top: -25vw;
    left: -18vw;
	z-index: 1;
}
#program .program_cont .desc .txt_wrap h3 {
	line-height: 1.8;
	letter-spacing: 0.15em;
}
#program .program_cont .desc .txt_wrap .txt {
	line-height: 2;
}
@media screen and (min-width:1140px) {
	#program::before {
		width: 1px;
		height: 170px;
		top: -85px;
	}
	#program {
		background: url("../img/program_bg01.png") center top no-repeat;
		background-size: 100%;
		padding: 91px 0 0;
	}
	#program .program_wrap {
		padding: 0 0 91px;
	}
	#program .inner .tit_pt01 {
		margin: 0 0 147px;
	}
	#program .inner .tit_pt01 .tit_en {
		width: 206px;
	}
	#program .program_cont::before {
		background: url("../img/program_bg02.png") center center no-repeat;
		background-size: 100%;
		width: 641px;
        height: 638px;
        top: -190px;
		right: 0;
	}
	#program .program_cont.program02::before {
		right: inherit;
		left: 0;
		top: inherit;
		bottom: -170px;
	}
	#program .program_cont.program03::before {
		top: inherit;
		bottom: -200px;
	}
	#program .program_cont .inner {
		display: flex;
		justify-content: space-between;
		margin: 0 auto 106px;
		position: relative;
		z-index: 5;
	}
	#program .program_cont .img {
		width: 467px;
	}
	#program .program_cont .desc {
		display: flex;
		justify-content: space-between;
	}
	#program .program_cont .desc h2 {
		width: 205px;
		text-align: center;
		position: relative;
	}
	#program .program_cont .desc h2::before {
		position: absolute;
		display: block;
		content: "";
		background: url("../img/program_icon01.png") center center no-repeat ;
		background-size: 100%;
		width: 380px;
        height: 380px;
		top: -170px;
		left: 50%;
		transform: translate(-50%,0);
		z-index: 1;
	}
	#program .program_cont .desc h2 img {
		position: relative;
		z-index: 10;
		width: 88px;
	}
	#program .program_cont .desc .txt_wrap {
		width: 475px;
	}
	#program .program_cont.program01 .desc h2 {
	}
	#program .program_cont.program01 .desc h2 img {
		width: 39px;
	}
	#program .program_cont .desc .txt_wrap h3 {
		font-size: 27px;
		margin: 0 0 32px;
	}
	#program .program_cont .desc .txt_wrap .txt {
		font-size: 13px;
	}
}

@media screen and (min-width:1400px) {
	
	#program {
		padding: 112px 0 0;
	}
	#program .program_wrap {
		padding: 0 0 112px;
	}
	#program .inner .tit_pt01 {
		margin: 0 0 180px;
	}
	#program .inner .tit_pt01 .tit_en {
		width: 252px;
	}
	#program .program_cont .inner {
		margin: 0 auto 130px;
	}
	#program .program_cont::before {
		width: 830px;
        height: 638px;
        top: -170px;
	}
	#program .program_cont .img {
		width: 570px;
		margin: 50px 0 0;
	}
	#program .program_cont .desc h2 {
		width: 250px;
	}
	#program .program_cont .desc h2 img {
		width: 108px;
	}
	#program .program_cont .desc .txt_wrap {
		width: 580px;
	}
	#program .program_cont.program01 .desc h2 {
	}
	#program .program_cont.program01 .desc h2 img {
		width: 48px;
	}
	#program .program_cont .desc .txt_wrap .en {
		margin: 0 0 30px;
	}
	#program .program_cont.program01 .desc .txt_wrap .en {
		width: 100%;
		margin: 0 0 0;
	}
	#program .program_cont.program02 .desc .txt_wrap .en {
		width: 544px;
	}
	#program .program_cont.program03 .desc .txt_wrap .en {
		width: 100%;
	}
	#program .program_cont .desc .txt_wrap h3 {
		font-size: 33px;
		margin: 0 0 40px;
	}
	#program .program_cont .desc .txt_wrap .txt {
		font-size: 16px;
	}
}

@media screen and (min-width:1500px) {
	
	#program .program_cont.program01 .desc .txt_wrap .en {
		width: 640px;
	}
	#program .program_cont.program03 .desc .txt_wrap .en {
		width: 600px;
	}
}

@media screen and (max-width:1139px) {
	
	#program .inner .tit_pt01 {
		margin: 0 0 20vw;
	}
	#program .inner .tit_pt01 .tit_en {
		width: 33.6vw;
	}
	#program .program_cont .img {
		width: 53.33vw;
		margin: 0 auto 8vw;
		padding: 12vw 0 0;
	}
	#program .program_cont {
		position: relative;
		margin: 0 0 26.66vw;
	}
	#program .program_cont .desc h2 {
		position: absolute;
		left: 4vw;
		top: 0;
		width: 14vw;
		z-index: 10;
	}
	#program .program_cont.program01 .desc h2 {
		width: 6vw;
		left: 9vw;
	}
	#program .program_cont .desc .txt_wrap h3 {
		font-size: 5.2vw;
		margin: 0 0 8vw;
	}
	#program .program_cont .desc .txt_wrap .txt {
		font-size: 3.73vw;
	}
}

/*===================
flow
=====================*/

#flow {
	padding: 16vw 0;
}
#flow ul li {
	border: 1px solid #FFAC0F;
	position: relative;
}

#flow ul li h2 {
	line-height: 1.4;
}
@media screen and (min-width:1140px) {
	
	#flow {
		padding: 108px 0 90px;
	}
	#flow .inner .tit_pt01 {
		margin: 0 0 55px;
	}
	#flow .inner .tit_pt01 .tit_en {
		width: 62px;
	}
	#flow ul {
		display: flex;
		justify-content: space-between;
	}
	#flow ul li {
		width: 19%;
		border-radius: 16px;
		padding: 73px 22px 32px;
	}
	#flow ul li::before {
		position: absolute;
		content: "";
		display: block;
		width: 15px;
		height: 15px;
		background-color: #FFAC0F;
		border-radius: 50%;
		top: 40px;
		left: 50%;
		transform: translate(-50%,0);
	}
	#flow ul li::after {
		position: absolute;
		content: "";
		display: block;
		width: 108%;
		height: 1px;
		background-color: #FFAC0F;
		top: 47px;
		left: 0;
	}
	#flow ul li:first-of-type::after {
		width: 58%;
		height: 1px;
		background-color: #FFAC0F;
		top: 47px;
		left: 50%;
	}
	#flow ul li:last-of-type::after {
		width: 50%;
		height: 1px;
		background-color: #FFAC0F;
		top: 47px;
		left: 0;
	}
	#flow ul li .icon {
		width: 37px;
		display: block;
		margin: 0 auto 16px;
	}
	#flow ul li h2 {
		font-size: 22px;
		margin: 0 auto 16px;
		text-align: center;
	}
	#flow ul li .txt {
		font-size: 13px;
	}
}


@media screen and (min-width:1400px) {
	#flow {
		padding: 132px 0 110px;
	}
	#flow .inner .tit_pt01 {
		margin: 0 0 67px;
	}
	#flow .inner .tit_pt01 .tit_en {
		width: 62px;
	}
	#flow ul li {
		padding: 89px 28px 40px;
	}
	
	#flow ul li::before {
		width: 19px;
		height: 19px;
		top: 50px;
	}
	#flow ul li::after {
		top: 59px;
		left: 0;
	}
	#flow ul li:first-of-type::after {
		top: 59px;
		left: 50%;
	}
	#flow ul li:last-of-type::after {
		top: 59px;
		left: 0;
	}
	#flow ul li .icon {
		width: 46px;
		margin: 0 auto 20px;
	}
	#flow ul li h2 {
		font-size: 28px;
		margin: 0 auto 20px;
	}
	#flow ul li .txt {
		font-size: 16px;
	}
}

@media screen and (max-width:1139px) {
	#flow .inner .tit_pt01 {
		margin: 0 0 13.33vw;
	}
	#flow .inner .tit_pt01 .tit_en {
		width: 8.26vw;
	}
	#flow ul li {
		border-radius: 4.2vw;
		padding: 6.4vw 4.5vw;
		margin: 0 0 4.26vw;
	}
	#flow ul li::after {
		position: absolute;
		content: "";
		display: block;
		width: 1px;
		height: 110%;
		background-color: #FFAC0F;
		top: 0;
		left: 5.7vw;
	}
	#flow ul li:first-of-type::after {
		height: 84%;
        top: 12vw;
	}
	#flow ul li:last-of-type::after {
		height: 23%;
        top: 0;
	}
	#flow ul li .tit_wrap {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 0 2.66vw 5.8vw;
		position: relative;
	}
	#flow ul li .tit_wrap::before {
		position: absolute;
		content: "";
		display: block;
		width: 2.9vw;
		height: 2.9vw;
		background-color: #FFAC0F;
		border-radius: 50%;
		top: 50%;
		left: -6vw;
		transform: translate(0,-50%);
	}
	#flow ul li .tit_wrap .icon {
		width: 7.2vw;
		margin: 0 6.66vw 0 0;
	}
	#flow ul li .tit_wrap h2 {
		font-size: 4.8vw;
	}
	#flow ul li .txt {
		font-size: 3.73vw;
		margin: 0 0 0 5.8vw;
	}
}

/*===================
support
=====================*/


#support .support_wrap01 {
	background: url("../img/sp/support_bg.png") center top no-repeat;
	background-size: cover;
	padding: 22.66vw 0 16vw;
}

#support .support_wrap01 .box01 .inner .tit {
	line-height: 1.8;
    letter-spacing: 0.15em;
}

#support .support_wrap01 .box01 .inner .txt {
	line-height: 1.77;
}
#support .support_wrap01 .box02 .desc h2 {
	background-color: #fff;
	border-radius: 150px;
	font-size: 17px;
	text-align: center;
	font-weight: 600;
}

#support .support_wrap01 .box02 .desc ul li {
	position: relative;
}
#support .support_wrap01 .box02 .desc ul li::before {
	position: absolute;
	content: "⚫︎";
	display: block;
	color: #FFAC0F;
	left: -20px;
	top: 50%;
	transform: translate(0,-50%);
}
#support .support_wrap01 .box02 .desc.child .inner .atten {
    font-weight: 200;
}
#support .support_wrap02 h2 {
	text-align: center;
}
#support .support_wrap02 h2 small {
    text-align: center;
	display: block;
}
@media screen and (min-width:1140px) {
	
	#support .support_wrap01 {
		background: url("../img/support_bg01.png") center top no-repeat;
		background-size: cover;
		padding: 147px 0 70px;
	}
	#support .support_wrap01 .box01 .inner {
		width: 1147px;
		margin: 0 auto 113px;
	}
	#support .support_wrap01 .box01 .inner .tit {
		font-size: 46px;
	}
	#support .support_wrap01 .box01 .inner .txt {
		font-size: 18px;
		width: 500px;
	}
	
	#support .support_wrap01 .box02 {
		display: flex;
		justify-content: center;
		margin: 0 auto;
		width: 100%;
	}
	#support .support_wrap01 .box02 .desc {
		width: 50%;
	}
	#support .support_wrap01 .box02 .desc.parents {
		background: url("../img/support_img01.png") left center no-repeat;
		background-size: 960px 655px;
		background-position: right top;
		overflow: hidden;
	}
	#support .support_wrap01 .box02 .desc.child {
		background: url("../img/support_img02.png") right center no-repeat;
		background-size: 960px 655px;
		background-position: left top;
		overflow: hidden;
	}
	
	#support .support_wrap01 .box02 .desc .icon {
		width: 164px;
	}
	#support .support_wrap01 .box02 .desc.parents .icon {
		margin: 0 0 0 auto;
	}
	#support .support_wrap01 .box02 .desc h2 {
		border-radius: 100px;
		font-size: 17px;
		padding: 15px 0;
		margin: 0 0 40px;
	}
	
	#support .support_wrap01 .box02 .desc ul {
		background-color: #fff;
		box-shadow: 0px 0px 10px 14px #fff;
		padding: 20px 0 10px 30px;
		min-height: 215px;
	}
	#support .support_wrap01 .box02 .desc ul li {
		font-size: 15px;
		margin: 0 0 10px;
	}
	#support .support_wrap01 .box02 {
		width: 100%;
	}
	#support .support_wrap01 .box02 .desc .inner {
		width: 356px;
		padding: 0 0 44px;
	}
	#support .support_wrap01 .box02 .desc.parents .inner {
		margin: 0 24px 0 auto;
	}
	#support .support_wrap01 .box02 .desc.child .inner {
		margin: 0 auto 0 24px;
		position: relative;
	}
	#support .support_wrap01 .box02 .desc.child .inner .atten {
		position: absolute;
    	bottom: 50px;
		font-size: 15px;
		left: 10px;
        font-weight: 200;
	}
	#support .support_wrap01 .box02 .desc .icon {
		width: 200px;
	}
	#support .support_wrap01 .box02 .desc h2 {
		font-size: 21px;
	}
	#support .support_wrap01 .box02 .desc ul li {
		font-size: 15px;
	}
	#support .support_wrap01 .box02 .desc ul li::before {
		position: absolute;
		content: "⚫︎";
		display: block;
		color: #FFAC0F;
		left: -20px;
		top: 50%;
		transform: translate(0,-50%);
	}
	
	
	
	#support .support_wrap02 {
		padding: 82px 0;
	} 
	#support .support_wrap02 h2 {
		text-align: center;
		font-size: 37px;
		margin: 0 0 41px;
	} 
	#support .support_wrap02 h2 span {
		display: inline-block;
		border-bottom: 1px solid #FF7F00;
		letter-spacing: 0.1em;
	} 
	#support .support_wrap02 h2 small {
		font-size: 29px;
	} 
	#support .support_wrap02 .img {
		width: 954px;
		margin: 0 auto;
	}
}

@media screen and (min-width:1400px) {
	
	
	#support .support_wrap01 {
		padding: 180px 0 86px;
	}
	#support .support_wrap01 .box01 .inner {
		width: 1147px;
		margin: 0 auto 113px;
	}
	#support .support_wrap01 .box01 .inner .tit {
		font-size: 46px;
	}
	#support .support_wrap01 .box01 .inner .txt {
		font-size: 18px;
		width: 500px;
	}
	#support .support_wrap01 .box02 .desc .inner {
		width: 356px;
		padding: 0 0 44px;
	}
	#support .support_wrap01 .box02 .desc.parents .inner {
		margin: 0 24px 0 auto;
	}
	#support .support_wrap01 .box02 .desc.child .inner {
		margin: 0 auto 0 24px;
		position: relative;
	}
	#support .support_wrap01 .box02 .desc.child .inner .atten {
		position: absolute;
    	bottom: 50px;
	}
	#support .support_wrap01 .box02 .desc .icon {
		width: 200px;
	}
	#support .support_wrap01 .box02 .desc h2 {
		font-size: 21px;
	}
	#support .support_wrap01 .box02 .desc ul li {
		font-size: 16px;
		position: relative;
	}
	#support .support_wrap01 .box02 .desc ul li::before {
		position: absolute;
		content: "⚫︎";
		display: block;
		color: #FFAC0F;
		left: -20px;
		top: 50%;
		transform: translate(0,-50%);
	}
	#support .support_wrap02 {
		padding: 100px 0;
	} 
	#support .support_wrap02 h2 {
		text-align: center;
		font-size: 46px;
		margin: 0 0 50px;
	} 
	#support .support_wrap02 h2 span {
		display: inline-block;
		border-bottom: 1px solid #FF7F00;
		letter-spacing: 0.1em;
	} 
	#support .support_wrap02 h2 small {
		font-size: 36px;
	} 
	#support .support_wrap02 .img {
		width: 1164px;
		margin: 0 auto;
	}
}

@media screen and (min-width:1920px) {
	
	#support .support_wrap01 .box02 {
		width: 1920px;
	}
}



@media screen and (max-width:1139px) {
	
	#support .support_wrap01 {
		margin: 0 0 16vw;
	}
	#support .support_wrap01 .box01 {
		margin: 0 0 16vw;
	}
	#support .support_wrap01 .box01 .inner .tit {
		font-size: 5vw;
		margin: 0 0 8vw;
	}
	#support .support_wrap01 .box01 .inner .txt {
		font-size: 4.2vw;
	}
	
	#support .support_wrap01 .box02 .inner {
		width: 100%;
	}
	#support .support_wrap01 .box02 .desc {
		position: relative;
	}
	#support .support_wrap01 .box02 .desc .icon {
		position: absolute;
		top: -15vw;
		right: 0;
		z-index: 10;
		width: 40vw;
        height: 40vw;
	}
	#support .support_wrap01 .box02 .desc h2 {
		font-size: 5.33vw;
		width: 85.8vw;
		margin: 0 auto 5.33vw;
		padding: 2.66vw;
	}
	#support .support_wrap01 .box02 .img {
		margin: 0 0 5.33vw;
	}
	#support .support_wrap01 .box02 .desc.parents {
		margin: 0 0 21.33vw;
	} 
	#support .support_wrap01 .box02 .desc ul {
		padding: 0 4.8vw 0 10.6vw;
	}
	#support .support_wrap01 .box02 .desc ul li {
		font-size: 4.2vw;
		margin: 0 0 2vw;
	}
	#support .support_wrap01 .box02 .desc ul li::before {
		left: -6vw;
	}
	#support .support_wrap01 .box02 .desc.child .inner .atten {
		padding: 4.8vw 4.8vw 0 4.8vw;
		font-size: 3.2vw;
	}
	
	#support .support_wrap02 {
		margin: 0 0 16vw;
	}
	#support .support_wrap02 h2 {
		font-size: 5.86vw;
	}
	
	#support .support_wrap02 h2 small {
		font-size: 4.8vw;
	}
	
}





/*===================
voice
=====================*/
#voice {
	margin: 0 0 16vw;
    padding: 16vw 0 32vw;
	background: url("../img/sp/voice_bg.png") center top no-repeat;
	background-size: cover;
}
#voice .slider li {
	margin: 0 1vw;
}
#voice .slider li .voice_wrap .tit {
	line-height: 1.4;
}
#voice .slider li .img {
	width: 30.4vw;
	margin: 0 auto 12.8vw;
}
#voice .slider li .voice_wrap {
	padding: 9.33vw 5.33vw;
	background-color: #fff;
	border-radius: 10px;
	position: relative;
}
#voice .slider li .voice_wrap::before {
	position: absolute;
	content: "";
	display: block;
	width: 0;
	  height: 0;
	  border-style: solid;
	  border-right: 7vw solid transparent;
	  border-left: 7vw solid transparent;
	  border-bottom: 7vw solid #fff;
	  border-top: 0;
	left: 50%;
	top: -7vw;
	transform: translate(-50%,0);
}
#voice .slider li .voice_wrap .tit {
	color: #FF7F00;
	font-size: 4.8vw;
	margin: 0 0 24px;
}
#voice .slider li .voice_wrap .txt {
	font-size: 3vw;
}
@media screen and (min-width:1140px) {
	#voice {
		margin: 82px 0;
		padding: 82px 0 183px;
		background: url("../img/voice_bg.png") center top no-repeat;
		background-size: cover;
	}
	#voice .inner .tit_pt01 {
		margin: 0 0 41px;
	}
	#voice .inner .tit_pt01 .tit_en {
		width: 63px;
	}
	#voice .slider li {
		width: 295px;
		margin: 0 10px;
	}
	#voice .slider li .img {
		width: 93px;
		margin: 0 auto 39px;
	}
	#voice .slider li .voice_wrap {
		padding: 28px 24px;
		background-color: #fff;
		border-radius: 10px;
		position: relative;
	}
	#voice .slider li .voice_wrap::before {
		position: absolute;
		content: "";
		display: block;
		width: 0;
		  height: 0;
		  border-style: solid;
		  border-right: 27px solid transparent;
		  border-left: 27px solid transparent;
		  border-bottom: 28px solid #fff;
		  border-top: 0;
		left: 50%;
		top: -26px;
		transform: translate(-50%,0);
	}
	#voice .slider li .voice_wrap .tit {
		color: #FF7F00;
		font-size: 20px;
		margin: 0 0 24px;
	}
	#voice .slider li .voice_wrap .txt {
		font-size: 13px;
	}
}

@media screen and (min-width:1400px) {
	#voice {
		padding: 100px 0 200px;
		margin: 100px 0;
	}
	
	#voice .inner .tit_pt01 {
		margin: 0 0 50px;
	}
	#voice .inner .tit_pt01 .tit_en {
		width: 77px;
	}
	
	#voice .slider li {
		width: 360px;
		margin: 0 15px;
	}
	#voice .slider li .img {
		width: 114px;
		margin: 0 auto 48px;
	}
	#voice .slider li .voice_wrap {
		padding: 35px 30px;
	}
	#voice .slider li .voice_wrap .tit {
		font-size: 24px;
		margin: 0 0 30px;
	}
	#voice .slider li .voice_wrap .txt {
		font-size: 16px;
	}
}
@media screen and (max-width:1139px) {
	#voice .inner .tit_pt01 {
		margin: 0 0 13.33vw;
	}
	#voice .inner .tit_pt01 .tit_en {
		width: 10.4vw;
	}
}
/*===================
price
=====================*/
#price {
	background-color: #FFF0C9;
	padding: 16vw 0;
}
#price .inner .tit_pt01 {
	margin: 0 0 13.33vw;
}
#price .inner .tit_pt01 .tit_en {
	width: 9.6vw;
}
#price .atten {
	font-weight: 200;
}
#price .price_wrap {
	margin: 0 0 13.33vw;
}
@media screen and (min-width:1140px) {
	#price .inner .tit_pt01 {
		margin: 0 0 45px;
	}
	#price .inner .tit_pt01 .tit_en {
		width: 55px;
	}
	
	#price {
		padding: 82px 0;
	}
	#price .price_wrap {
		margin: 0 0 32px;
	}
}


@media screen and (min-width:1400px) {
	#price {
		padding: 100px 0;
	}
	#price .inner .tit_pt01 {
		margin: 0 0 56px;
	}
	#price .inner .tit_pt01 .tit_en {
		width: 68px;
	}
	#price .price_wrap {
		margin: 0 0 40px;
	}
	#price .atten {
		width: 1200px;
		margin: 0 auto;
	}
}

@media screen and (max-width:1139px) {
	#price .atten {
		font-size: 3.73vw;
	}
}

/*===================
counselor
=====================*/
#counselor {
	padding: 16vw 0 0;
}

#counselor .inner .tit_pt01 {
	margin: 0 0 8vw;
}
#counselor .inner .tit_pt01 .tit_en {
	width: 19.46vw;
}

@media screen and (min-width:1140px) {
	#counselor {
		padding: 80px 0 0;
	}
	#counselor .inner .tit_pt01 {
		margin: 0 0 49px;
	}
	#counselor .inner .tit_pt01 .tit_en {
		width: 120px;
	}
	#counselor .counselor_wrap {
		display: flex;
		justify-content: space-between;
		
	}
	#counselor .counselor_wrap.counselor01 {
		margin: 0 0 106px;
	}
	#counselor .counselor_wrap .img {
		width: 288px;
	}
	#counselor .counselor_wrap .desc {
		width: 800px;
	}
	#counselor .counselor_wrap .desc .name {
		font-size: 24px;
		margin: 0 0 10px;
	}
	#counselor .counselor_wrap .desc .position {
		font-size: 13px;
		margin: 0 0 32px;
	}
	#counselor .counselor_wrap .desc dd {
		font-size: 14px;
	}
}

@media screen and (min-width:1400px) {
	#counselor {
		padding: 100px 0 0;
	}
	#counselor .inner .tit_pt01 {
		margin: 0 0 60px;
	}
	#counselor .inner .tit_pt01 .tit_en {
		width: 147px;
	}
	#counselor .counselor_wrap.counselor01 {
		margin: 0 0 130px;
	}
	#counselor .counselor_wrap .img {
		width: 352px;
	}
	#counselor .counselor_wrap .desc {
		width: 1000px;
	}
	#counselor .counselor_wrap .desc .name {
		font-size: 30px;
	}
	#counselor .counselor_wrap .desc .position {
		font-size: 16px;
		margin: 0 0 40px;
	}
	#counselor .counselor_wrap .desc dd {
		font-size: 18px;
	}
}


@media screen and (max-width:1139px) {
	#counselor .counselor_wrap .desc dt {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 0 5.3vw;
	}
	#counselor .counselor_wrap.counselor01 {
		margin: 0 0 13.33vw;
	}
	#counselor .counselor_wrap .desc dt .img {
		width: 32vw;
	}
	#counselor .counselor_wrap .desc dt .name_wrap {
		width: 53.33vw;
	}
	#counselor .counselor_wrap .desc dt .name_wrap .name {
		font-size: 4.8vw;
	}
	#counselor .counselor_wrap .desc dt .name_wrap .position {
		font-size: 3.2vw;
	}
	#counselor .counselor_wrap .desc dd {
		font-size: 3.73vw;
	}
}

/*===================
Q&A
=====================*/


#faq {
	padding: 16vw 0 0;
}
#faq .inner .tit_pt01 {
	margin: 0 0 8vw;
}
#faq .inner .tit_pt01 .tit_en {
	width: 8.53vw;
}	
#faq .ac {
  width: 100%;
  margin: 0 auto;
}
#faq .ac-parent {
  height: 50px;
  line-height: 50px;
  background-color: #FFF0C9;
	border-radius: 20px;
	margin: 0 0 10px;
  cursor: pointer;
  transition: .3s;
	position: relative;
	font-size: 3.7vw;
	display: table;
	width: 100%;
	
}
#faq .ac-parent span {
	position: relative;
}
#faq .ac-parent span::before {
	position: absolute;
	content: "";
	display: block;
	background: url("../img/faq_icon_q.svg") center center no-repeat;
	background-size: 100%;
	top: 0.5vw;
	left: -8vw;
	width: 5.3vw;
	height: 5.3vw;
}

#faq .ac-parent:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 4vw;
  transform: translateY(-50%);
  /*横線*/
  width: 2.66vw;
  height: 2px;
  background: #111;
}
#faq .ac-parent:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 5.2vw;
  transform: translateY(-50%);
  transition: all .3s;
  /*縦線*/
  width: 2px;
  height: 2.66vw;
  background: #111;
}
#faq .ac-parent.open:after {
  top: 25%;
  transform: rotate(90deg);
  opacity: 0;
}

#faq .ac-child {
  padding: 2em 4vw 2em 12.8vw;
  background-color: #fff;
	font-size: 3.2vw;
}
#faq .ac-child p {
	position: relative;
}

#faq .ac-child p::before {
	position: absolute;
	content: "";
	display: block;
	background: url("../img/faq_icon_a.svg") center center no-repeat;
	background-size: 100%;
	top: 0;
	left: -8vw;
	width: 5.3vw;
	height: 5.3vw;
}

@media screen and (min-width:1140px) {
	#faq {
		padding: 160px 0 160px;
	}
	#faq .inner .tit_pt01 {
		margin: 0 0 45px;
	}
	#faq .inner .tit_pt01 .tit_en {
		width: 53px;
	}	
	#faq .ac {
		width: 1049px;
	}
	#faq .ac-parent {
		font-size: 16px;
		height: 86px;
	  line-height: 86px;
	  padding-left: 95px;
	}
	#faq .ac-parent:before {
		width: 22px;
		right: 44px;
	}
	#faq .ac-parent:after {
		height: 22px;
		right: 54px;
	}
	#faq .ac-parent span::before { 
		top: 50%;
		left: -60px;
		transform: translate(0,-50%);
		width: 28px;
		height: 24px;
	}
	#faq .ac-child {
		padding-left: 95px;
		font-size: 13px;
	}
	#faq .ac-child p::before {
		top: 0;
		left: -3vw;
		width: 25px;
		height: 25px;
	}
}
@media screen and (min-width:1400px) {
	#faq {
		padding: 200px 0 200px;
	}
	#faq .inner .tit_pt01 {
		margin: 0 0 55px;
	}
	#faq .inner .tit_pt01 .tit_en {
		width: 65px;
	}	
	#faq .ac {
		width: 1280px;
	}
	#faq .ac-parent {
		font-size: 20px;
	}
	#faq .ac-child {
		padding-left: 95px;
		font-size: 16px;
	}
	#faq .ac-child::before {
		/*top: 8px;*/
	}
}
@media screen and (max-width:1139px) {
	#faq {
		margin: 0 0 16vw;
	}
	#faq .ac-parent {
	  height: 18.66vw;
	  line-height: 1.6;
		padding: 6vw 13.2vw 6vw 12.8vw;
	}
}
@media screen and (max-width:767px) {
	
#faq .ac-parent:before {
	height: 1px;
	}
#faq .ac-parent:after {
	width: 1px;
	}
}

/*===================
blog
=====================*/

#blog .inner .tit_pt01 {
	margin: 0 0 8vw;
}
#blog .inner .tit_pt01 .tit_en {
	width: 8vw;
}	
#blog .blog_wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 2vw;
}

#blog .blog_wrap .card {
	width: 42.6vw;
	margin: 0 0 5.33vw;
}
#blog .blog_wrap .card .tit {
	font-size: 3.2vw;
	margin: 0 0 2.66vw;
}
#blog .blog_wrap .card .date {
	font-size: 2.66vw;
}
@media screen and (min-width:1140px) {
	
	#blog {
		margin: 0 0 164px;
	}
	#blog .inner .tit_pt01 {
		margin: 0 0 55px;
	}
	#blog .inner .tit_pt01 .tit_en {
		width: 49px;
	}	
	#blog .blog_wrap {
		gap: 30px;
	}
	#blog .blog_wrap .card {
		width: 196px;
	}
	#blog .blog_wrap .card .img {
		margin: 0 0 16px;
	}	
	#blog .blog_wrap .card .tit {
		margin: 0 0 8px;
		font-size: 11px;
	}
	#blog .blog_wrap .card .date {
		font-size: 11px;
	}	
}



@media screen and (min-width:1400px) {
	
	#blog {
		margin: 0 0 200px;
	}
	#blog .inner .tit_pt01 {
		margin: 0 0 60px;
	}
	#blog .inner .tit_pt01 .tit_en {
		width: 64px;
	}
	#blog .blog_wrap {
		gap: 40px;
	}
	#blog .blog_wrap .card {
		width: 240px;
	}	
	#blog .blog_wrap .card .img {
		margin: 0 0 20px;
	}	
	#blog .blog_wrap .card .tit {
		margin: 0 0 10px;
		font-size: 14px;
	}
	#blog .blog_wrap .card .date {
		font-size: 14px;
	}	
}



/*===================
insta
=====================*/
.insta {
	background-color: #FFF0C9;
	padding: 16vw 0;
}
.insta ul {
	display: flex;
	justify-content: space-between;
}
@media screen and (min-width:1140px) {
	
	
	.insta {
		padding: 90px 0 75px;
	}
	
	.insta .inner {
		display: flex;
		justify-content: space-between;
	}
	
	.insta h1 span {
		display: block;
	}
	.insta h1 .icon {
		width: 68px;
		margin: 0 0 20px;
	}
	.insta h1 .account {
		width: 199px;
	}
	
	.insta ul {
		width: 880px;
		gap:7px;
	}
	.insta ul li {
		width: 215px;
	}
  .insta #sb_instagram{
		width: 880px;
  }
}

@media screen and (min-width:1400px) {
	.insta {
		padding: 123px 0 104px;
	}
	.insta h1 .icon {
		width: 84px;
		margin: 0 0 25px;
	}
	.insta h1 .account {
		width: 243px;
	}
	.insta ul {
		width: 1073px;
	}
	.insta ul li {
		width: 263px;
	}
  .insta #sb_instagram{
		width: 1073px;
  }
}

@media screen and (max-width:1139px) {
	.insta h1 {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		gap: 2.9vw;
		margin: 0 0 8vw;
	}
	.insta h1 .icon {
		width: 16vw;
	}
	.insta h1 .account {
		width: 64.8vw;
	}
	
	.insta ul {
		flex-wrap: wrap;
		gap: 1vw;
	}
	.insta ul li {
		width: 43.5vw;
	}
}
/*===================
com_page_title
=====================*/
.com_page_title {
	margin: 101px 0 -6px;
	padding-top: 80px;
	height: 380px;
	position: relative;
	background: url(../img/cv_bg02.png) no-repeat center top / cover;
}
.com_page_title::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 168px;
	left: 0;
	bottom: -1px;
	pointer-events: none;
	background: url(../img/cv_bg03.png) no-repeat center bottom / 100% 100%;
}
.com_page_title .head {
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
	display: flex;
	align-items: center;
	color: #fff;
	gap: 30px;
}
.com_page_title .head .en {
	width: 200px;
	display: block;
}
.com_page_title .head img {
	width: 100%;
}
@media screen and (max-width:1139px) {
	.com_page_title {
		margin: 15.9vw 0 5.3vw;
		padding: 9.2vw 0 10vw;
		height: 51.8vw;
		background-image: url(../img/sp/cv_bg02.png);
	}
	.com_page_title::after {
		background-size: 100% auto;
	}
	.com_page_title .head {
		display: block;
		text-align: center;
		font-size: 4.2666vw;
	}
	.com_page_title .head .en {
		margin: 0 auto 2.1vw;
		width: 30vw;
	}
}
/*===================
content
=====================*/
.content {
	margin: 0 auto;
	width: 1000px;
}
@media screen and (max-width:1139px) {
	.content {
		width: 89.3333vw;
	}
}
#page_path {
	margin-bottom: 39px;
	display: flex;
	position: relative;
}
#page_path li {
	width: fit-content;
	font-size: 14px;
	font-weight: 500;
	color: #333;
	word-break: break-all;
}
#page_path li a {
	text-decoration: underline;
	color: #333;
}
@media screen and (min-width:1140px) {
	#page_path li {
		max-width: 800px;
	}
	#pagePath li a:hover {
		text-decoration: none;
	}
}
@media screen and (max-width:1139px) {
	#page_path {
		margin-bottom: 7vw;
	}
	#page_path li {
		max-width: 48vw;
		font-size: 3.2vw;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}
}
/*===================
head_line
=====================*/
.head_line {
	margin-bottom: 40px;
	font-size: 26px;
	font-weight: 700;
	padding-bottom: 3px;
	letter-spacing: 0.03em;
	color: #ff7b53;
	border-bottom: 1px solid currentColor;
}
.head_line span {
	position: relative;
}
.head_line span::after {
	margin-left: 7px;
	content: "";
	vertical-align: -4px;
	display: inline-block;
	width: 36px;
	height: 31px;
	background: url(../img/blog/icon01.png) no-repeat left top / 100%;
}
@media screen and (max-width:1139px) {
	.head_line {
		margin-bottom: 5.2vw;
		padding-bottom: 0;
		font-size: 5.3333vw;
	}
	.head_line span::after {
		margin-left: 2.2vw;
		width: 5.8vw;
		height: 5.8vw;
	}
}
/*===================
blog_page
=====================*/
.blog_page .blog_list {
	margin-bottom: 43px;
	gap: 13px;
	display: flex;
	flex-wrap: wrap;
}
.blog_page .blog_list li {
	width: calc((100% - 39px) / 4);
}
.blog_page .blog_list a {
	padding: 17px 9px 50px;
	display: block;
	height: 100%;
	border-radius: 10px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
	overflow: hidden;
	background: #fff url(../img/blog/icon02.png) no-repeat right bottom / 59px;
}
.blog_page .blog_list a span {
	display: block;
}
.blog_page .blog_list li .img {
	border-radius: 10px;
	background: #efefef;
	overflow: hidden;
	border: 1px solid #efefef;
	aspect-ratio: 1/1;
}
.blog_page .blog_list img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.blog_page .blog_list .date {
	margin: 3px 0 6px;
	font-size: 10px;
	color: #707070;
}
.blog_page .blog_list .ttl {
	font-weight: 700;
	font-size: 16px;
	text-align: left;
	color: #000;
	line-height: 1.5;
}
.blog_page .link_box {
	margin-bottom: 99px;
	padding: 20px 29px 24px;
	border-radius: 10px;
	background: #fff0c9;
}
.blog_page .link_box .head_line {
	margin-bottom: 27px;
	padding-bottom: 5px;
	font-size: 24px;
	letter-spacing: -0.02em;
	color: #fbab30;
}
.blog_page .link_list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.blog_page .link_list a {
	padding: 4px 29px;
	display: block;
	width: fit-content;
	font-size: 20px;
	letter-spacing: 0.02em;
	text-align: left;
	color: #fff;
	font-weight: 700;
	border-radius: 22px;
	background: #fbab30;
	border: 1px solid #fbab30;
}
.blog_page .link_list li.on a {
	background: #fff;
	border-color: #ffac0f;
	color: #ffac0f;
}
.blog_page .blog_conts {
	display: flex;
	justify-content: space-between;
}
.blog_page .blog_conts .box01 {
	width: 690px;
}
.blog_page .blog_conts .head_line {
	margin-bottom: 30px;
}
.blog_page .card_ul {
	margin-bottom: 99px;
}
.blog_page .card_ul li + li {
	margin-top: 30px;
}
.blog_page .card_ul a {
	padding: 26px 60px 27px 20px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	overflow: hidden;
	border-radius: 10px;
	background: #fff url(../img/blog/icon02.png) no-repeat right bottom / 59px;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1);
}
.blog_page .card_ul span {
	display: block;
}
.blog_page .card_ul .text_box {
	flex: 1;
}
.blog_page .card_ul .pho_box {
	margin: 11px 0 0 20px;
	width: 165px;
	aspect-ratio: 1/1;
	border-radius: 13px;
	overflow: hidden;
	border: 1px solid #efefef;
}
.blog_page .card_ul .pho_box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.blog_page .card_ul .date {
	font-size: 12px;
	color: #707070;
}
.blog_page .card_ul .ttl {
	margin: 8px 0 15px;
	font-weight: 700;
	font-size: 20px;
	color: #333;
}
.blog_page .card_ul .txt {
	line-height: 1.687;
	font-size: 16px;
	color: #5c5c5c;
}
.blog_page .blog_conts .box02 {
	width: 262px;
}
.blog_page .wp-pagenavi {
	font-size: 0;
	clear: both;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}
.blog_page .wp-pagenavi a,
.blog_page .wp-pagenavi span {
	min-width: 37px;
	font-size: 20px;
	display: block;
	text-decoration: none;
	border: 1px solid #ff7b53;
	padding: 0 5px 1px;
	color: #ff7b53;
}
.blog_page .wp-pagenavi span.current {
	color: #fff;
	background: #ff7b53;
	opacity: 1;
}
.blog_page .wp-pagenavi .first,
.blog_page .wp-pagenavi .last {
	display: none;
}
.blog_page .wp-pagenavi .previouspostslink,
.blog_page .wp-pagenavi .nextpostslink {
	padding: 1px 17px 0 15px;
	width: auto;
	border: none;
	font-size: 16px;
	background: url(../img/blog/icon04.png) no-repeat right top 12px / 9px !important;
}
.blog_page .wp-pagenavi .previouspostslink {
	padding: 1px 14px 0 17px;
	background: url(../img/blog/icon05.png) no-repeat left top 12px / 9px !important;
}
.blog_page .info_box {
	margin-bottom: 29px;
	padding-bottom: 27px;
	overflow: hidden;
	border-radius: 20px;
	background: #fff7f4;
	font-size: 14px;
	line-height: 1.714;
	letter-spacing: 0.08em;
	color: #333;
}
.blog_page .info_box:last-of-type {
	margin-bottom: 0;
}
.blog_page .info_box .title {
	margin-bottom: 25px;
	padding: 18px 18px 22px;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.03em;
	color: #fff;
	background: #ff7b53;
	display: flex;
	align-items: flex-end;
	line-height: 1.2;
	gap: 9px;
}
.blog_page .info_box .title span {
	display: block;
}
.blog_page .info_box .title .en {
	width: fit-content;
	height: 16px;
}
.blog_page .info_box .title .en img {
	width: auto;
	height: 100%;
	vertical-align: top;
}
.blog_page .info_box .image {
	margin: 0 auto 11px;
	width: 100px;
	border-radius: 100%;
	background: #fff;
	overflow: hidden;
}
.blog_page .info_box .image img {
	width: 100%;
}
.blog_page .info_box .name {
	margin-bottom: 19px;
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.02em;
	line-height: 1.416;
	font-weight: 700;
}
.blog_page .info_box .name small {
	margin-top: 8px;
	display: block;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0;
}
.blog_page .info_box .inn_box {
	margin: 0 15px 30px;
	padding-bottom: 22px;
	border-bottom: 1px solid #fff;
}
.blog_page .info_box .inn_box:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.blog_page .info_box .list {
	margin: -25px 15px 2px;
}
.blog_page .info_box .list a {
	padding: 17px 0 9px;
	display: flex;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.02em;
	justify-content: space-between;
	border-bottom: 1px solid #ffe7e0;
}
.blog_page .info_box .list a span {
	font-size: 10px;
	color: #7e7e7e;
}
.blog_page #blog {
	margin-bottom: 33px;
}
.blog_page .top_box {
	margin-bottom: 51px;
	padding: 21px 20px 22px;
	background: #fff5dc;
}
.blog_page .top_box .heading {
	margin-bottom: 20px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.5;
	color: #333;
}
.blog_page .top_box ul {
	display: flex;
	gap: 10px;
}
.blog_page .top_box .ul01 {
	margin-bottom: 19px;
}
.blog_page .top_box .ul01 li {
	padding: 2px 7.5px;
	width: fit-content;
	font-weight: 700;
	font-size: 16px;
	text-align: center;
	color: #ff7b53;
	border-radius: 16.5px;
	background: #fff;
	border: 1px solid #ff7b53;
}
.blog_page .top_box .ul02 {
	gap: 25px;
}
.blog_page .top_box .ul02 li {
	padding-left: 30px;
	font-size: 16px;
	color: #707070;
	background: url(../img/blog/icon09.png) no-repeat left center / 21px;
}
.blog_page .top_box .ul02 .item {
	background-image: url(../img/blog/icon10.png)
}
.blog_page .detail {
	margin-bottom: 63px;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.857;
	color: #333;
	font-feature-settings: "palt";
}
.blog_page .detail > * {
	margin-bottom: 15px;
}
.blog_page .detail .wp-block-image {
	margin-bottom: 40px;
}
.blog_page .detail hr {
	margin: 20px 0;
}
.blog_page .detail > *:last-child {
	margin-bottom: 0;
}
.blog_page .detail h2 {
	margin-bottom: 54px;
	padding-bottom: 10px;
	font-size: 22px;
	line-height: 1.545;
	font-weight: 700;
	color: #ff7b53;
	border-bottom: 4px solid #ff7b53;
}
.blog_page .detail p + h2 {
	margin-top: 45px;
}
.blog_page .detail h3 {
	margin-bottom: 40px;
	padding: 4px 9px;
	font-size: 20px;
	line-height: 1.3;
	font-weight: 700;
	color: #ff7b53;
	background: #fff7f4;
	border-bottom: 1px solid #ff7b53;
}
.blog_page .detail p + h3 {
	margin-top: 35px;
}
.blog_page .detail h4 {
	margin-bottom: 39px;
	padding-left: 22px;
	font-size: 18px;
	line-height: 1.444;
	color: #ff7b53;
	font-weight: 700;
	position: relative;
}
.blog_page .detail p + h4 {
	margin-top: 25px;
}
.blog_page .detail h4::before {
	width: 15px;
	height: 15px;
	content: "";
	position: absolute;
	left: 0;
	top: 6px;
	background: #ff7b53;
}
.blog_page .detail h5 {
	margin-bottom: 37px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.625;
	color: #ff7b53;
}
.blog_page .detail h6 {
	margin-bottom: 36px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.625;
}
.blog_page .detail p {
	text-align: justify;
}
.blog_page .detail ol {
	margin: 23px 0 70px;
	padding: 47px 34px 15px;
	counter-reset: num;
	background: #fff;
	border: 10px solid #fff5dc;
}
.blog_page .detail li {
	margin-bottom: 15px;
	padding-left: 20px;
	counter-increment: num;
	position: relative;
	text-align: justify;
}
.blog_page .detail li:last-of-type {
	margin-bottom: 0;
}
.blog_page .detail li::before {
	content: counter(num);
	position: absolute;
	left: 0;
	top: 0;
	font-size: 18px;
	color: #ff7b53;
	line-height: 1.3;
	font-family: "Jost", sans-serif;
}
.blog_page .detail ul {
	margin-bottom: 90px;
}
.blog_page .detail ul li::before {
	content: "";
	width: 10px;
	height: 10px;
	background: #ff7b53;
	border-radius: 100%;
	top: 8px;
}
.blog_page .detail blockquote {
	margin-bottom: 93px;
	padding: 26px 64px 27px;
	position: relative;
	border-top: 1px solid #b9b9b9;
	border-bottom: 1px solid #b9b9b9;
}
.blog_page .detail p + blockquote {
	margin-top: 80px;
}
.blog_page .detail blockquote > *:last-child {
	margin-bottom: 0;
}
.blog_page .detail blockquote ol {
	margin-top: 0;
	padding: 0;
	border: none;
	position: relative;
}
.blog_page .detail blockquote::before,
.blog_page .detail blockquote::after {
	width: 62px;
	height: 48px;
	content: "";
	position: absolute;
	left: 0;
	top: -25px;
	background: url(../img/blog/icon06.png) no-repeat left top / 100%;
}
.blog_page .detail blockquote::after {
	left: auto;
	right: 0;
	top: auto;
	bottom: -25px;
	background-image: url(../img/blog/icon07.png);
}
.blog_page .detail blockquote ol li::before {
	content: counter(num) ")";
	color: #333;
	font-size: 14px;
	line-height: 1.75;
	font-family: "Noto Sans JP", sans-serif;
}
.blog_page .detail blockquote li {
	margin-bottom: 24px;
}
.blog_page .sns_box {
	margin-bottom: 70px;
}
.blog_page .sns_box li::before {
	display: none;
}
.blog_page .sns_box .title {
	margin: 0 auto 20px;
	width: 292px;
	border: none;
}
.blog_page .sns_box .sub_box {
	margin-bottom: 40px;
	display: flex;
	justify-content: center;
	gap: 15px;
}
.blog_page .sns_box .sub_box a {
	width: 167px;
	display: block;
}
.blog_page .share_box {
	padding: 19px 20px;
	background: #fff5dc;
	border-radius: 35px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 28.5px;
}
.blog_page .share_box span {
	margin-right: 11px;
	display: block;
	width: 102px;
}
.blog_page .share_box a {
	width: fit-content;
	height: 20px;
}
.blog_page .share_box a img {
	width: auto;
	height: 100%;
	vertical-align: top;
}
.blog_page .page_list {
	margin-bottom: 0;
	display: flex;
	gap: 5.9rem;
}
.blog_page .page_list li {
	margin: 0;
	padding: 0;
	display: none;
}
.blog_page .page_list li:has(a) {
	display: block;
}
.blog_page .page_list li::before {
	display: none;
}
.blog_page .page_list a {
	padding: 5px 30px 7px;
	display: block;
	width: 167.89px;
	font-size: 16px;
	font-weight: 500;
	border-radius: 20.5px;
	background: #fff;
	border: 1px solid #fbab30;
	background: #fff url(../img/blog/next.png) no-repeat right 28px center / 13px;
	box-sizing: border-box;
}
.blog_page .page_list .current a {
	background-image: url(../img/arrow.svg);
	color: #fff;
	background-color: #fbab30;
}
.blog_page .page_list .prev a {
	text-align: right;
	background: #fff url(../img/blog/prev.png) no-repeat left 27px center / 13px;
}
.blog_page .detail a:where(:not(.wp-element-button)) {
	color: #1967d2;
	text-decoration: underline;
	word-break: break-all;
}
@media screen and (min-width:1140px) {
	.blog_page .com_page_title .head .jp {
		margin-top: 10px;
	}
	.blog_page .card_ul a:hover,
	.blog_page .blog_list a:hover {
		opacity: 1;
		background-image: url(../img/blog/icon03.png);
	}
	.blog_page .link_list a:hover {
		background: #fff;
		border-color: #ffac0f;
		color: #ffac0f;
	}
	.blog_page .wp-pagenavi a:hover {
		color: #fff;
		background: #ff7b53;
		opacity: 1;
	}
	.blog_page .wp-pagenavi .previouspostslink:hover,
	.blog_page .wp-pagenavi .nextpostslink:hover {
		opacity: 0.7;
		color: #ff7b53;
		background-color: transparent;
	}
	.blog_page .detail a:where(:not(.wp-element-button)):hover {
		color: #e53900;
	}
	.blog_page .detail .wp-block-buttons a:hover {
		color: #e53900;
		opacity: 1;
	}
	.blog_page .detail .wp-block-buttons {
		margin-bottom: 30px;
	}
}
@media screen and (max-width:1139px) {
	.blog_page .blog_list {
		margin-bottom: 16vw;
		gap: 5vw 1.86vw;
	}
	.blog_page .blog_list li {
		width: calc((100% - 1.86666vw) / 2);
	}
	.blog_page .blog_list a {
		padding: 2.5vw 1.8vw 5.6vw;
		border-radius: 2.6666vw;
		box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.1);
		background-size: 10.4vw;
	}
	.blog_page .link_box .head_line {
		margin-bottom: 4.2vw;
		font-size: 5.3333vw;
		padding: 0;
		border: none;
	}
	.blog_page .link_box {
		margin-bottom: 15vw;
		padding: 5vw 5vw 6.6vw;
	}
	.blog_page .link_list {
		gap: 2.8vw 3.4vw;
	}
	.blog_page .link_list li:first-of-type {
		order: 4;
	}
	.blog_page .link_list a {
		padding: 0.55vw 4.7vw;
		font-size: 3.2vw;
	}
	.blog_page .blog_conts {
		display: block;
	}
	.blog_page .blog_conts .head_line {
		margin-bottom: 7vw;
	}
	.blog_page .card_ul {
		margin-bottom: 10vw;
	}
	.blog_page .card_ul li + li {
		margin-top: 10vw;
	}
	.blog_page .card_ul a {
		padding: 5vw 5vw 13.4vw;
		display: block;
		position: relative;
		background-size: 10.4vw;
	}
	.blog_page .card_ul .date {
		font-size: 2.6666vw;
	}
	.blog_page .card_ul .ttl {
		margin: 0.9vw 0 4.3vw;
		width: 54vw;
		min-height: 16vw;
		font-size: 4.2vw;
	}
	.blog_page .card_ul .txt {
		font-size: 3.73333vw;
		letter-spacing: 0.05em;
		line-height: 1.714;
	}
	.blog_page .card_ul .pho_box {
		margin: 0;
		position: absolute;
		right: 5vw;
		top: 5vw;
		width: 22.5vw;
	}
	.blog_page .blog_conts .box01 {
		margin-bottom: 16vw;
		width: auto;
	}
	.blog_page .blog_list .date {
		margin: 1vw 0 1.3vw;
		font-size: 1.6vw;
	}
	.blog_page .blog_list .ttl {
		font-size: 3.7333vw;
	}
	.blog_page .wp-pagenavi {
		gap: 1.8vw;
	}
	.blog_page .wp-pagenavi a, .blog_page .wp-pagenavi span {
		padding: 0.2vw 0.3vw;
		min-width: 7.3vw;
		font-size: 4vw;
		line-height: 1.55;
	}
	.blog_page .wp-pagenavi .previouspostslink, .blog_page .wp-pagenavi .nextpostslink {
		padding: 0.1vw 4.3vw 0.3vw 3.2vw;
		font-size: 3.7333vw;
		background-size: 2.2vw !important;
		background-position: right center !important;
	}
	.blog_page .wp-pagenavi .previouspostslink {
		padding: 0.1vw 3.2vw 0.3vw 4.3vw;
		background-position: left center !important;
	}
	.blog_page .blog_conts .box02 {
		width: auto;
	}
	.blog_page .info_box {
		margin-bottom: 8vw;
		padding-bottom: 9.5vw;
		font-size: 3.7333vw;
	}
	.blog_page .info_box .inn_box {
		margin: 0 5vw 9.2vw;
		padding-bottom: 8.5vw;
	}
	.blog_page .info_box .title {
		margin-bottom: 6vw;
		padding: 5.5vw 5.2vw;
		font-size: 4.2666vw;
		gap: 5.8vw;
		align-items: center;
	}
	.blog_page .info_box .title .en {
		height: 4.2666vw;
	}
	.blog_page .info_box .image {
		margin-bottom: 2.8vw;
		width: 26.6666vw;
	}
	.blog_page .info_box .name small {
		margin-top: 1.8vw;
		font-size: 3.2vw;
	}
	.blog_page .info_box .name {
		margin-bottom: 5.0666vw;
		font-size: 5.3333vw;
	}
	.blog_page .info_box .list {
		margin: -5.8vw 4.8vw -1.7vw;
	}
	.blog_page .info_box .list a {
		padding: 4.8vw 0 2.15vw;
		font-size: 3.7333vw;
	}
	.blog_page .info_box .list a span {
		font-size: 2.666vw;
	}
	.blog_page #blog {
		margin-bottom: 0;
	}
	.blog_page .top_box {
		margin-bottom: 7.8vw;
		padding: 4.8vw 4vw 4.5vw;
	}
	.blog_page .top_box .heading {
		margin-bottom: 2vw;
		font-size: 5.333vw;
		line-height: 1.6;
	}
	.blog_page .top_box ul {
		gap: 3vw;
	}
	.blog_page .top_box .ul01 {
		margin-bottom: 2vw;
	}
	.blog_page .top_box .ul01 li {
		padding: 0.7vw 1.88vw;
		font-size: 3.2vw;
		text-align: center;
		border-radius: 4.4vw;
	}
	.blog_page .top_box .ul02 {
		gap: 4.2vw;
	}
	.blog_page .top_box .ul02 li {
		padding-left: 4.8vw;
		font-size: 2.666vw;
		background-size: 3.6vw;
		letter-spacing: 0;
		font-feature-settings: "palt";
	}
	.blog_page .detail {
		margin-bottom: 15vw;
		font-size: 3.7333vw;
		line-height: 1.714;
	}
	
	.blog_page .detail .wp-block-image {
		margin-bottom: 10.6vw;
	}
	.blog_page .detail .wp-block-buttons {
		margin-bottom: 8vw;
	}
	.blog_page .detail > * {
		margin-bottom: 4.8vw;
	}
	.blog_page .detail hr {
		margin: 5vw 0;
	}
	.blog_page .detail p {
		letter-spacing: 0.08em;
		font-feature-settings: normal;
	}
	.blog_page .detail h2 {
		margin-bottom: 13vw;
		padding-bottom: 0;
		font-size: 4.8vw;
		line-height: 1.555;
		border-bottom-width: 0.5333vw;
	}
	.blog_page .detail p + h2 {
		margin-top: 13vw;
	}
	.blog_page .detail h3 {
		margin-bottom: 7.7vw;
		padding: 2.7vw 2vw 2.6vw;
		font-size: 4.2666vw;
		line-height: 1.625;
	}
	.blog_page .detail p + h3 {
		margin-top: 7vw;
	}
	.blog_page .detail h4 {
		margin-bottom: 10.6vw;
		padding-left: 4.5vw;
		font-size: 3.7333vw;
		line-height: 1.428;
	}
	.blog_page .detail h4::before {
		width: 2.9333vw;
		height: 2.9333vw;
		top: 1.6vw;
	}
	.blog_page .detail p + h4 {
		margin-top: 7vw;
	}
	.blog_page .detail h5,
	.blog_page .detail h6 {
		font-size: 3.7333vw;
		line-height: 1.428;
	}
	.blog_page .detail h5 {
		margin-bottom: 6.8vw;
	}
	.blog_page .detail h6 {
		margin-bottom: 9.8vw;
	}
	.blog_page .detail ol {
		margin: 2.6vw 0 15vw;
		padding: 13vw 6vw 0 4vw;
	}
	.blog_page .detail li {
		margin-bottom: 4.8vw;
		padding-left: 6.5vw;
		font-feature-settings: "palt";
		letter-spacing: 0.08em;
	}
	.blog_page .detail li::before {
		font-size: 4.8vw;
	}
	.blog_page .detail ul {
		margin-bottom: 11vw;
	}
	.blog_page .detail ul li,
	.blog_page .detail blockquote li {
		padding-left: 4.8vw;
	}
	.blog_page .detail ul li::before {
		width: 2.666vw;
		height: 2.666vw;
		top: 2.133vw;
	}
	.blog_page .detail blockquote ol li::before {
		font-size: 3.7333vw;
	}
	.blog_page .detail blockquote {
		margin-bottom: 15vw;
		padding: 6.56vw 4vw 6.8vw;
	}
	.blog_page .detail p + blockquote {
		margin-top: 10vw;
	}
	.blog_page .detail blockquote li {
		margin-bottom: 4.4vw;
	}
	.blog_page .detail blockquote::before,
	.blog_page .detail blockquote::after {
		width: 11.4vw;
		height: 8vw;
	}
	.blog_page .detail blockquote::before {
		top: -4.4vw;
	}
	.blog_page .detail blockquote::after {
		bottom: -4.4vw;
	}
	.blog_page .sns_box {
		margin-bottom: 16vw;
	}
	.blog_page .sns_box .sub_box {
		margin-bottom: 8vw;
		gap: 4vw;
	}
	.blog_page .sns_box .title {
		margin: 0 auto 5.4vw;
		width: 62vw;
	}
	.blog_page .sns_box .sub_box a {
		width: 44.533vw;
	}
	.blog_page .share_box {
		padding: 3.5vw 2vw 4.8vw;
		flex-wrap: wrap;
		gap: 2.4vw 5.8vw;
		border-radius: 11.466vw;
	}
	.blog_page .share_box a {
		height: 5.333vw;
	}
	.blog_page .share_box span {
		margin: 0;
		width: 100%;
		text-align: center;
	}
	.blog_page .share_box span img {
		width: 22.4vw;
	}
	.blog_page .page_list {
		flex-wrap: wrap;
		justify-content: center;
		gap: 2.3vw 4.24vw;
	}
	.blog_page .page_list a {
		padding: 2.7vw 7.3vw;
		width: 42.51vw;
		font-size: 4.2666vw;
		border-radius: 6.666vw;
		background-size: 2vw;
		background-position: right 5vw center;
	}
	.blog_page .page_list .prev a {
		background-size: 2.5vw;
		background-position: left 5vw center;
	}
	.blog_page .page_list .current {
		order: 3;
	}
}
/*===================
contact_page
=====================*/
.contact_page {
	color: #333;
}
.contact_page #contact {
	margin-bottom: 20px;
}
.contact_page .mid_text {
	font-size: 24px;
	font-weight: 500;
	line-height: 2.027;
	text-align: center;
}
.contact_page .mid_text + .mid_text {
	margin-top: 49px;
}
.contact_page .com_page_title .head .en {
	margin: -6px 8px 0 -4px;
	width: 346px;
}
.contact_page .com_page_title {
	padding-top: 85px;
}
.contact_page .mail_form {
	margin-top: 39px;
}
.contact_page .mail_form .bg {
	margin-bottom: 87px;
	padding: 49px 0 72px;
	background: #fff7f4;
}
.contact_page table {
	width: 100%;
	border-collapse: collapse;
}
.contact_page table th,
.contact_page table td {
	padding: 29px 0 30px;
	text-align: left;
	vertical-align: top;
	font-size: 18px;
	font-weight: 400;
	position: relative;
	border-bottom: 1px solid #fff;
	word-break: break-all;
}
.contact_page table th {
	padding: 42px 100px 27px 0;
}
.contact_page table tr:last-of-type th,
.contact_page table tr:last-of-type td {
	border-bottom: none;
}
.contact_page table th {
	width: 34.15%;
}
.contact_page .must {
	padding: 0 5px;
	width: fit-content;
	font-size: 14px;
	font-weight: 500;
	display: inline-block;
	color: #fff;
	border-radius: 5px;
	background: #ff7b53;
}
.contact_page .must.not {
	background: #747474;
}
.contact_page input[type="text"],
.contact_page input[type="email"],
.contact_page input[type="tel"],
.contact_page select,
.contact_page textarea {
	padding: 5px 23px;
	width: 100%;
	height: 59px;
	font-size: 18px;
	color: #333;
	border-radius: 10px;
	background: #fff;
	border: 1px solid #ddd;
	box-sizing: border-box;
}
.contact_page textarea {
	padding: 14px 19px;
	font-size: 16px;
	display: block;
	min-height: 276px;
	resize: vertical;
	border-radius: 10px;
}
.contact_page select {
	width: 290.32px;
	background: #fff url(../img/contact/icon.png) no-repeat right 16px center / 17px;
}
.contact_page .list li {
	display: flex;
	align-items: center;
	gap: 46px;
}
.contact_page .list li + li {
	margin-top: 20px;
}
.contact_page td p {
	margin: -2px 0 8px;
	font-feature-settings: "palt";
	line-height: 1.666;
}
.contact_page .text_list {
	margin: 15px 0 17px;
	font-size: 14px;
	line-height: 1.785;
}
.contact_page .text_list li {
	padding-left: 0.7em;
	text-indent: -0.7em;
}
.contact_page .mail_form .heading {
	margin-bottom: 21px;
	font-weight: 700;
	font-size: 21px;
	text-align: center;
	color: #000;
}
.contact_page .scroll_box {
	margin-bottom: 38px;
	padding: 53px 74px;
	overflow-y: auto;
	height: 370px;
	background: #fff;
	border: 1px solid #bebebe;
	line-height: 2.25;
}
.contact_page .scroll_box h4 {
	font-weight: 700;
}
.contact_page .scroll_box p {
	margin-bottom: 36px;
}
.contact_page .agree_txt {
	margin: 0 auto 42px;
	width: fit-content;
	font-feature-settings: "palt";
}
.contact_page .agree_txt .must {
	margin: 0 15px 0 0;
	display: inline-block;
}
.contact_page .agree_txt  .wpcf7-list-item {
	margin-left: 0;
}
.contact_page input[type="checkbox"] {
	display: none;
}
.contact_page input[type="checkbox"] ~ span {
	padding-left: 15px;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	background: url(../img/contact/check_icon01.png) no-repeat top 8px left / 11px;
	cursor: pointer;
}
.contact_page input[type="checkbox"]:checked ~ span {
	background-image: url(../img/contact/check_icon02.png);
}
.contact_page .submit {
	display: flex;
	justify-content: center;
	gap: 20px;
}
.contact_page .submit input {
	width: 500px;
	height: 96px;
	font-size: 28px;
	font-weight: 700;
	color: #fff;
	border-radius: 48px;
	text-align: center;
	background: #fbab30 url(../img/arrow.svg) no-repeat right 40px center / 22px;
	transition: 0.3s;
}
.contact_page .submit li {
	margin: 0 auto;
	width: fit-content;
	position: relative;
}
.contact_page .submit .wpcf7-spinner {
	position: absolute;
	top: 105%;
	left: 50%;
	margin: 0;
	transform: translatex(-50%);
}
.contact_page .wpcf7-response-output {
	margin: 2em auto 0 !important;
	max-width: 1000px;
}
@media screen and (min-width:1140px) {
	.contact_page .submit input:hover {
		opacity: 0.7;
	}
	.contact_page th .must {
		position: absolute;
		right: 53px;
		top: 46px;
	}
	.contact_page th.top {
		padding-top: 27px;
	}
	.contact_page th.top .must {
		top: 31px;
	}
}
@media screen and (max-width:1139px) {
	.contact_page #contact {
		margin-bottom: 0;
	}
	.contact_page .com_page_title {
		padding-top: 9.3vw;
	}
	.contact_page .com_page_title .head .en {
		margin: 0 auto 2.3vw;
		width: 52vw;
	}
	.contact_page #page_path {
		margin-bottom: 12.5vw;
	}
	.contact_page .mid_text {
		font-size: 4.2666vw;
		text-align: left;
		line-height: 1.75;
	}
	.contact_page .mid_text + .mid_text {
		margin-top: 7.6vw;
	}
	.contact_page .mail_form {
		margin-top: 15.6vw;
	}
	.contact_page .mail_form .bg {
		margin-bottom: 19vw;
		padding: 13.0666vw 0 6vw;
	}
	.contact_page table th,
	.contact_page table td {
		padding: 2vw 0 5vw;
		display: block;
		width: 100%;
		font-size: 4.2666vw;
	}
	.contact_page table td {
		margin-bottom: 4.9vw;
	}
	.contact_page table th {
		padding: 0;
		border-bottom: none;
	}
	.contact_page input[type="text"],
	.contact_page input[type="email"],
	.contact_page input[type="tel"],
	.contact_page select,
	.contact_page textarea {
		height: 13.3333vw;
		font-size: 3.7333vw;
		border-radius: 2.6666vw;
	}
	.contact_page .must {
		margin-left: 3.8vw;
		padding: 0 1.5vw;
		font-size: 3.2vw;
		border-radius: 0.8vw;
		vertical-align: middle;
	}
	.contact_page .list li {
		gap: 1vw;
		font-size: 3.73vw;
		gap: 3.9vw;
	}
	.contact_page .list li + li {
		margin-top: 3vw;
	}
	.contact_page select {
		width: 77.418vw;
		font-size: 3.73333vw;
		background-size: 3.5vw;
		background-position: right 4.8vw center;
	}
	.contact_page .sml_txt {
		font-size: 3.7333vw !important;
	}
	.contact_page td p {
		margin: 2vw 0 2vw;
		font-size: 3.7333vw;
		line-height: 1.714;
	}
	.contact_page .text_list {
		margin: 3vw 0 3.5vw;
		font-size: 3.2vw;
		line-height: 1.75;
	}
	.contact_page textarea {
		padding: 3.6vw 5vw;
		font-size: 3.2vw;
		min-height: 64vw;
	}
	.contact_page .mail_form .heading {
		margin-bottom: 2.8vw;
		font-size: 4.6vw;
	}
	.contact_page .scroll_box {
		margin-bottom: 5vw;
		padding: 6vw 4vw;
		height: 52.8vw;
		font-size: 2.8vw;
		line-height: 1.75;
	}
	.contact_page .scroll_box p {
		margin-bottom: 6vw;
	}
	.contact_page .scroll_box h4 {
		margin-bottom: 1.2vw;
		text-align: center;
		font-size: 3.6vw;
	}
	.contact_page input[type="checkbox"] ~ span {
		padding-left: 4vw;
		font-size: 3.2vw;
		background-size: 3vw;
		background-position: left top 1.8vw;
	}
	.contact_page .agree_txt .must {
		margin: 0 2vw 0 0;
	}
	.contact_page .agree_txt {
		margin-bottom: 10.1vw;
	}
	.contact_page .submit {
		display: block;
	}
	.contact_page .submit li + li {
		margin-top: 3vw;
	}
	.contact_page .submit input {
		width: 84vw;
		height: 16.8vw;
		border-radius: 8.4vw;
		font-size: 4.5333vw;
		background-size: 4.4vw;
		background-position: right 7.8vw center;
	}
	.contact_page .wpcf7-response-output {
		width: 89.3333vw;
	}
	
}
/* 目次 */
.blog_page .detail .entryToc{
  margin:2em 0 4em;
  padding:2.5em 2.5em 3em;
  background:#FFFDF7;
  border:5px solid #FFE0C1;
  counter-reset: toc;
}
.blog_page .detail .entryToc .heading{
  color:#FF7B53;
  font-size:1.57rem;
  margin:0 0 1.5em;
  border-bottom:1px solid #FF7B53;
  text-align:center;
}
.blog_page .detail .entryToc ul{
  margin:0 !important;
}
.blog_page .detail .entryToc ul li{
  font-size:1rem;
  margin:0 0 1em;
  padding:0 0 0 1.5em;
  position:relative;
}
.blog_page .detail .entryToc ul li::before{
  counter-increment: toc;
  content: counter(toc);
  position:absolute;
  color:#FF7B53;
  width:auto;
  height:auto;
  border-radius:0;
  background:none;
  top:.3em;
}
.blog_page .detail .entryToc ul li li{
  font-size:.86rem;
  margin:1em 0;
}
.blog_page .detail .entryToc ul li li::before{
  content: "\2212";
  top:0;
}
.blog_page .detail .entryToc ul li li li{
  padding:0 0 0 1.5em;
}
.blog_page .detail .entryToc ul li:last-of-type,
.blog_page .detail .entryToc ul li li:last-of-type{
  margin:0;
}
.blog_page .detail .entryToc ul li a{
  position:relative;
  text-decoration:none;
  color:#333;
}
.blog_page .detail .entryToc ul li li a::before{
}
@media screen and (max-width:1139px) {
  .blog_page .detail .entryToc .heading{
    font-size:4.8vw;
  }
  .blog_page .detail .entryToc ul li{
    font-size:3.73vw;
  }
  .blog_page .detail .entryToc ul li li{
    font-size:2.67vw;
  }
}
.tagWrapper{
  margin:0 0 63px;
}
.tagList{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.tagList li a{
  display:inline-block;
  color:#fff;
  padding:.3em 10px .4em 30px;
  font-size:12px;
  background:#986614 url(../img/blog/icon_tag.png) no-repeat left 10px center / 13px 13px;
}

