@charset "UTF-8";
/*
	Filename: common
	Version: 1.0.1
*/
/*-----------------------------------------------------
	Typography
------------------------------------------------------*/
em {
	font-style: normal;
}
address {
	font-style: normal;
}
/*-----------------------------------------------------
	Elements
------------------------------------------------------*/
h1,h2,h3,h4,h5,h6 {
  line-height: 1.5;
}
p {
  line-height: 1.6;
}
ul li {
  line-height: 1.6;
	list-style-type: none;
}
ol li {
  line-height: 1.6;
	list-style-type: decimal;
}
img {
	vertical-align: bottom;
}
iframe {
	width: 100%;
}
sup {
	font-size: 70%;
	vertical-align: super;
}
sub {
	font-size: 70%;
	vertical-align: sub;
}
/*-----------------------------------------------------
	Link
------------------------------------------------------*/
a {
	text-decoration: none;
	color: #000;
	-webkit-transition: all .25s;
	   -moz-transition: all .25s;
	    -ms-transition: all .25s;
	     -o-transition: all .25s;
	        transition: all .25s;
}
a > img {
	-webkit-transition: all .25s;
	   -moz-transition: all .25s;
	    -ms-transition: all .25s;
	     -o-transition: all .25s;
	        transition: all .25s;
}
a:hover {
	color: #000;
}
a:hover > img {
	opacity: 0.65;
}
a[href^="tel:"] {
    pointer-events: none;
}
/*-----------------------------------------------------
	haeder
------------------------------------------------------*/
header {
  position: fixed;
  z-index: 1000;
  width: 100%;
  padding-left: 120px;
  background: #fee7e7;
}
header .header_l {
  padding: 13px 0;
}
header .header_logo a img {
	width: 508px;
}
header .header_r {
  background: #ff9daf;
}
header .header_r ul li {
  width: 200px;
  padding: 23px 0;
  border-right: 2px solid #fff;
  text-align: center;
}
header .header_r ul li > a {
  position: relative;
  font-size: 32px;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
@media screen and (max-width: 1920px) {
  header {
    padding-left: 30px;
  }
  header .header_logo a img {
    width: 280px;
  }
  header .header_r ul li {
    width: 150px;
    padding: 10px 0;
  }
  header .header_r ul li > a {
    font-size: 20px;
  }
  header .header_r ul li > a img {
    width: 60px;
  }
}
@media screen and (max-width: 1300px) {
  header .header_logo a img {
    width: 211px;
  }
  header .header_r ul li {
    width: 100px;
    padding: 10px 0;
  }
  header .header_r ul li > a {
    font-size: 16px;
  }
  header .header_r ul li > a img {
    width: 40px;
  }
}

@media screen and (min-width: 901px) {
	.fat-nav, .fat-nav ul {
		display: none;
	}
}
@media screen and (max-width: 900px) {
  header {
    padding-left: 20px;
    background: #fff;
  }
  header .header_l {
    width: 100%;
    padding: 6px 0;
    text-align: center;
  }
  header .header_logo a img {
    width: 210px;
  }
  header .header_r {
    display: none;
  }
	/* SPメニュー */
  .hamburger {
    width: 84px ;
    height: 66px;
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10000;
    background: #ff9daf;
    padding: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    -webkit-tap-highlight-color: transparent;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
  }
  .hamburger::after {
    display: block;
    content: "メニュー";
    position: absolute;
    bottom: 5px;
    left: 14px;
    z-index: 10002;
    font-size: 15px;
    color: #fff;
  }
  .hamburger__icon {
    position: relative;
    margin-top: 24px;
  }
  .hamburger__icon, .hamburger__icon::before, .hamburger__icon::after {
    width: 26px;
    height: 2px;
		position: absolute;
		right: 28px;
    display: block;
    background-color: #fff;
    -moz-transition-property: background-color, -moz-transform;
    -o-transition-property: background-color, -o-transform;
    -webkit-transition-property: background-color, -webkit-transform;
    transition-property: background-color, transform;
    -moz-transition-duration: 0.4s;
    -o-transition-duration: 0.4s;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
  }
  .hamburger__icon::before, .hamburger__icon::after {
    content: "";
    right: 0;
  }
  .hamburger__icon::before {
		width: 26px;
    top: -8px;
  }
  .hamburger__icon::after {
		width: 26px;
    top: 8px;
  }
  .hamburger.active {
    right: 0;
  }
	.hamburger.active .hamburger__icon {
    background-color: transparent;
  }
  .hamburger.active .hamburger__icon:before, .hamburger.active .hamburger__icon:after {
		width: 26px;
  }
  .hamburger.active .hamburger__icon:before {
    -moz-transform: translateY(8px) rotate(45deg);
    -ms-transform: translateY(8px) rotate(45deg);
    -webkit-transform: translateY(8px) rotate(45deg);
    transform: translateY(8px) rotate(45deg);
  }
  .hamburger.active .hamburger__icon:after {
    -moz-transform: translateY(-8px) rotate(-45deg);
    -ms-transform: translateY(-8px) rotate(-45deg);
    -webkit-transform: translateY(-8px) rotate(-45deg);
    transform: translateY(-8px) rotate(-45deg);
  }
  .fat-nav {
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    top: 65.89px;
    left: 0;
    z-index: 9999;
    background: #ff9daf;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }
  .fat-nav__wrapper {
    width: 100%;
    height: 100%;
		position: relative;
		padding: 80px 16px;
    display: table;
    table-layout: fixed;
		z-index: 1;
    text-align: center;
  }
  .fat-nav li {
    width: 50%;
		margin-bottom: 40px;
  }
  .fat-nav li a {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
  }
}
@media screen and (max-width: 600px) {
  header .header_l {
    text-align: left;
  }
}
/*-----------------------------------------------------
	Layout
------------------------------------------------------*/
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.wrap {
  width: 1440px;
  margin: 0 auto;
}
@media screen and (max-width: 1500px) {
  .wrap {
    width: 100%;
    padding: 0 30px;
  }
}
@media screen and (max-width: 900px) {
  .wrap {
    width: 100%;
    padding: 0 20px;
  }
}
.pink {
  background: #ff9daf !important;
}
.pink_text {
  color: #ff9daf !important;
}
.be {
  background: #fff5f0 !important;
}
.be_text {
  color: #fff5f0 !important;
}
.ye {
  background: #fffbc7 !important;
}
.ye_text {
  color: #fffbc7 !important;
}
.gr {
  background: #a2d7d4 !important;
}
.gr_text {
  color: #a2d7d4 !important;
}
.vi {
  background: #d2cce6 !important;
}
.wh_text {
  color: #fff !important;
}
.bg_top {
  width: 100%;
}
.bg_top img {
  width: 100%;
}
/*-----------------------------------------------------
	link_btn
------------------------------------------------------*/
a.link_btn  {
  display: block;
  width: 830px;
  margin: 70px auto;
  padding: 8px 0;
  border-radius: 50px;
  font-size: 38px;
  color: #fff;
  text-align: center;
}
a.link_btn:hover  {
  opacity: .65;
}

@media screen and (max-width: 1920px) {
  a.link_btn  {
    width: 43.229vw;
    margin: 3.646vw auto;
    padding: 0.417vw 0;
    border-radius: 2.604vw;
    font-size: 1.979vw;
  }
}
@media screen and (max-width: 900px) {
  a.link_btn  {
    width: 80%;
    margin: 20px auto 80px;
    border-radius: 50px;
    font-size: 22px;
  }
}
@media screen and (max-width: 600px) {
  a.link_btn  {
    width: 95%;
  }
}
/*-----------------------------------------------------
	midashi_01
------------------------------------------------------*/
.midasi_01 {
  position: absolute;
	top: -100px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
  z-index: +1;
  width: 100%;
  font-size: 50px;
  text-align: center;
  line-height: 1.3;
}
@media screen and (max-width: 1920px) {
  .midasi_01 {
    top: -5.208vw;
    font-size: 2.604vw;
  }
}
@media screen and (max-width: 900px) {
  .midasi_01 {
    top: -3.333vw;
    font-size: 32px;
  }
}
/*-----------------------------------------------------
	#mv
------------------------------------------------------*/
#mv {
  padding: 386px 30px 353px;
}
#mv img {
  width: 693px;
}
@media screen and (max-width: 1920px) {
  #mv {
    padding: 18.75vw 1.563vw 20.313vw;
  }
  #mv img {
    width: 36.094vw;
  }
}
@media screen and (max-width: 1300px) {
  #mv {
    padding: 13.846vw 2.308vw 17.462vw;
  }
}
@media screen and (max-width: 900px) {
  #mv {
    padding: 18.889vw 3.333vw 20.444vw;
  }
  #mv img {
    width: 38.889vw;
  }
}
@media screen and (max-width: 600px) {
  #mv {
    padding: 23.5vw 5vw 11.833vw;
  }
  #mv img {
    width: 48.333vw;
  }
}
.mv_bottom {
  position: relative;
  width: 100%;
  margin-top: -222px;
}
@media screen and (max-width: 1920px) {
  .mv_bottom {
    margin-top: -8.854vw;
  }
}
@media screen and (max-width: 1300px) {
  .mv_bottom {
    margin-top: -9.231vw;
  }
}
@media screen and (max-width: 900px) {
  .mv_bottom {
    margin-top: -8.889vw;
  }
}
@media screen and (max-width: 600px) {
  .mv_bottom {
    margin-top: -8.833vw;
  }
}
.mv_bottom img {
  width: 100%;
}
.mv_inner {
  position: relative;
  z-index: +1;
  margin-top: -120px;
}
@media screen and (max-width: 1920px) {
  .mv_inner {
    margin-top: -6.25vw;
  }
}
/*-----------------------------------------------------
	footer
------------------------------------------------------*/
footer {
  -webkit-box-align: center;
  align-items: center;
  background: #ffffff;
}
footer .footer_l {
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: start;
  justify-content: flex-start;
  width: 680px;
}
footer .footer_l img {
  width: 309px;
}
footer .footer_l address {
  margin-left: 35px;
  font-size: 20px;
}
footer .footer_r {
  padding: 35px 0 15px;
  font-size: 20px;
  text-align: center;
}
footer .footer_r img {
  width: 736px;
}
footer .footer_bottom {
  padding: 20px 0 40px;
  background: #ff9daf;
  text-align: center;
}
footer .footer_bottom .wrap ul {
  -webkit-box-pack: center;
  justify-content: center;
  margin-bottom: 70px;
}
footer .footer_bottom .wrap ul li {
  position: relative;
}
footer .footer_bottom .wrap ul li:last-of-type::after {
  display: none;
}
footer .footer_bottom .wrap ul li::after {
  content: "・";
  display: inline-block;
  padding: 0 20px;
  font-size: 30px;
  color: #fff;
}
footer .footer_bottom .wrap ul li a {
  font-size: 28px;
  color: #fff;
}
footer .footer_bottom .wrap small {
  font-size: 21px;
  color: #fff;
}
@media screen and (max-width: 1920px) {
  footer .footer_l {
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    justify-content: space-between;
    width: auto;
  }
  footer .footer_l img {
    width: 16.094vw;
  }
  footer .footer_l address {
    margin-left: 1.823vw;
    font-size: 1.042vw;
  }
  footer .footer_r {
    padding: 1.823vw 0 0.781vw;
    font-size: 1.042vw;
  }
  footer .footer_r img {
    width: 38.333vw;
  }
  footer .footer_bottom {
    padding: 1.042vw 0 2.083vw;
  }
  footer .footer_bottom .wrap ul {
    -webkit-box-pack: center;
    justify-content: center;
    margin-bottom: 3.646vw;
  }
  footer .footer_bottom .wrap ul li::after {
    padding: 0 1.042vw;
    font-size: 1.563vw;
  }
  footer .footer_bottom .wrap ul li a {
    font-size: 1.458vw;
  }
  footer .footer_bottom .wrap small {
    font-size: 1.094vw;
  }
}
@media screen and (max-width: 900px) {
  footer .footer_l {
    -webkit-box-pack: center;
    justify-content: center;
    width: 100%;
    padding-top: 3.333vw;
  }
  footer .footer_l img {
    width: 34.333vw;
  }
  footer .footer_l address {
    margin-left: 3.889vw;
    font-size: 2.667vw;
  }
  footer .footer_r {
    width: 100%;
    padding: 0 0 2.222vw;
    font-size: 2.667vw;
  }
  footer .footer_r img {
    width: 81.778vw;
  }
  footer .footer_bottom {
    padding: 2.222vw 0 4.444vw;
  }
  footer .footer_bottom .wrap ul {
    display: none;
  }
  footer .footer_bottom .wrap small {
    font-size: 2.778vw;
  }
}


/*---------------------------------------------------------------------------------------------------------------------------------------------------------------
	レスポンシブ
----------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.sp {
	display: none;
}
.tb {
	display: none;
}
@media screen and (max-width: 750px) {
	/*-----------------------------------------------------
		Elements
	------------------------------------------------------*/	
  img {
      max-width: 100%;
      height: auto;
  }
	/*-----------------------------------------------------
		Elements
	------------------------------------------------------*/
	body {
		word-wrap: break-word;
	}

	a[href^="tel:"] {
		pointer-events: auto;
	}
	/*-----------------------------------------------------
		others
	------------------------------------------------------*/
	.tb {
		display: block !important;
	}
	.pc {
		display: none !important;
	}
}
@media screen and (max-width: 414px) {
	.tb {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
}

