@charset "utf-8";
.contents_block{
	text-align: center;
}
@media screen and (max-width: 480px) {
	.contents_block img{
		width: 100%;
	}
}
* {
	box-sizing: border-box;
}
img {
	width: 100%;
	height: auto;
}

.fc_red {
	color: #ff3b00;
}
.relative {
	position: relative;
}
.absolute {
	position: absolute;
}
.absolute.center {
	position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  margin: auto;
}
@media (max-width: 768px) {
	.absolute.center {
		top: 40%;
	}
}

.absolute.total {
	font-size: 5.125rem;
	font-weight: bold;
	color: #ff3b00;
}
@media (max-width: 768px) {
	.absolute.total {
		font-size: 10vw;
	}
}

.absolute.total span {
	font-size: 1.625rem;
}
@media (max-width: 768px) {
	.absolute.total span {
		font-size: 0.9375rem;
	}
}

.note {
	font-size: 0.875rem;
	margin-top: 1rem;
	margin-bottom: 60px;
}
@media (max-width: 768px) {
	.note {
		font-size: 0.6875rem;
		margin-top: 1rem;
		margin-bottom: 2rem;
	}
}

.sns_txt {
	font-size: 1.125rem;
	font-weight: bold;
	margin-top: 2.5rem;
	text-align: center;
}
@media (max-width: 768px) {
	.sns_txt {
		font-size: 0.9375rem;
		margin-top: 2rem;
	}
}

.sns_area {
	display: flex;
	justify-content: center;
	margin-top: 1.25rem;
}

.sns_area li {
	margin-right: 25px;
}
.sns_area li:last-child {
	margin-right: 0;
}

.grid_btn_navi {
	display: flex;
	justify-content: center;
}
@media screen and (max-width: 768px) {
	.grid_btn_navi {
		display: block;
	}
}
.grid_btn_navi li {
	margin-right: 20px;
}
@media screen and (max-width: 768px) {
	.grid_btn_navi li {
		margin-right: 0;
		margin-bottom: 20px;
	}
}

.grid_btn_navi li:last-child {
	margin-right: 0;
}
@media screen and (max-width: 768px) {
	.grid_btn_navi li:last-child {
		margin-bottom: 0;
	}
}

.grid_btn {
	height: 80px;
	width: 320px;
}

.c-roundButton {
	display: inline-block;
	width: 300px;
	padding: 15px 30px;
	border: 2px solid #e60012;
	border-radius: 30px;
	background-color: #fff;
	color: #e60012;
	font-size: 1.125rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	-webkit-transition: 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
	cursor: pointer;
}

.c-roundButton.-gray:after {
  content: "";
  display: inline-block;
  margin-top: -6px;
  margin-left: 10px;
  width: 22px;
  height: 22px;
  background: url(/common/rwd/imgs/contents/icon_link_external.png) no-repeat 50% 50%;
  -webkit-background-size: 22px 22px;
  background-size: 22px 22px;
  -ms-transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  vertical-align: middle;
}
.c-roundButton:hover {
	background-color: #e60012;
	color: #fff;
}

.c-roundButton.-gray {
	border-color: rgba(0, 0, 0, 0.54);
	color: rgba(0, 0, 0, 0.54);
}
.c-roundButton.-gray:hover {
	border-color: transparent;
	background-color: rgba(0, 0, 0, 0.54);
	color: #fff;
}

/* section_block -------------- */
.contents_block.color3 {
	background-color: #ffeae6;
}
.contents_block.color4 {
	background-color: #edf7bc;
}

/*sc_title--------------------*/
.sc_title{
	margin-bottom: 40px;
}
@media screen and (max-width: 480px) {
	.sc_title{
		margin-bottom: 18px;
	}
}
/*main_text_lead---------------*/
.main_text_lead_wrap{
	padding: 60px 0;
}
.main_text_lead + .main_text_lead {
	margin-top: 1em;
}
@media screen and (max-width: 480px) {
	.main_text_lead_wrap{
		padding: 20px 10px 27px;
	}
	.main_text_lead{
		text-align: left;
	}
	.main_text_lead + .main_text_lead {
		margin-top: 0;
	}
}
.route{
	margin-bottom: 16px;
}


@media screen and (max-width: 480px) {
	.u_pc {
		display: none;
	}
}
@media screen and (min-width: 481px) {
	.u_sp {
		display: none;
	}
}

/*photogallery--------------------*/
.photogallery .contents_block{
	position: relative;
}
.photogallery .contents_block_inner{
	position: relative;
	padding: 30px 0;
}
@media screen and (max-width: 480px) {
	.photogallery .contents_block_inner{
		padding: 25px 10px;
	}
}

.photogallery_ttl {
	background: #ee7673;
	padding: 14px;
}
.photogallery_ttl_inner {
	width: 750px;
	margin: 0 auto;
	position: relative;
}
.photogallery_ttl_charagif img,
.comment_ttl_charagif img {
	width: 130px;
	height: 157px;
}
.photogallery_ttl_charagif,
.comment_ttl_charagif {
	position: absolute;
	bottom: -14px;
	left: 0;
}
@media screen and (max-width: 480px) {
	.photogallery_ttl {
		padding: 8px 10px;
	}
	.photogallery_ttl_inner {
		width: 310px;
	}
	.photogallery_ttl img {
		width: 300px;
		height: auto;
	}
	.photogallery_ttl_charagif img,
	.comment_ttl_charagif img {
		width: 66px;
		height: 82px;
	}
	.photogallery_ttl_charagif,
	.comment_ttl_charagif {
		position: absolute;
		bottom: -10px;
	}
}
.comment_ttl {
	background: #a4d300;
	padding: 14px;
}
.comment_ttl_inner {
	width: 750px;
	margin: 0 auto;
	position: relative;
}
.comment_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.comment_detail {
	width: 465px;
	margin-bottom: 40px;
}
.comment_detail img {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 480px) {
	.comment_ttl {
		padding: 8px 10px;
	}
	.comment_ttl_inner {
		width: 310px;
	}
	.comment_ttl > img {
		width: 300px;
		height: auto;
	}
	.comment_list {
		display: block;
	}
	.comment_detail {
		width: 100%;
		margin-bottom: 34px;
	}
}

.u-pc {display: block;}
.u-sp {display: none;}
@media (max-width: 768px) {
  .u-pc {display: none;}
  .u-sp {display: block;}
}
body {
  height: auto;
}
/* ---------- kv & lead ---------- */
.fw-kv {
  width: 100%;
  position: relative;
  padding-bottom: 26.625%;
  background: url(/tsunagu/event/assets/images/hfw/itudoko/2021/kv_pc.png) no-repeat center / cover;
}
@media (max-width: 768px) {
  .fw-kv {
    padding-bottom: 71.07%;
    background: url(/tsunagu/event/assets/images/hfw/itudoko/2021/kv_sp.png) no-repeat center / cover;
  }
}

.fw-kv_ttl {
  position: absolute;
  width: 49.25%;
  left: 50%;
  top: 19%;
  transform: translateX(-50%);
}
.fw-kv_ttl img {
  width: 100%;
}
@media (max-width: 768px) {
  .fw-kv_ttl {
    width: 80%;
  }
}

.fw-period {
  background-color: #7ad300;
  font-size: 1.625rem;
  text-align: center;
  padding: 20px 0;
  color: #fff;
}
@media (max-width: 768px) {
  .fw-period {
    font-size: 1.0625rem;
    padding: 5px 0;
  }
}

.fw-main-content {
  background-color: #fefad1;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 125px;
}
@media (max-width: 768px) {
  .fw-main-content {
    padding-bottom: 115px;
  }
}
.fw-main-content_inner {
  max-width: 1120px;
  width: 100%;
  margin: 0 auto;
  padding-top: 50px;
}
@media (max-width: 768px) {
  .fw-main-content_inner {
    max-width: 100%;
    padding-top: 25px;
  }
}

.fw-lead {
  text-align: center;
}
.fw-lead > p {
  line-height: 2;
}
.fw-lead > p + p {
  margin-top: 1rem;
}
@media (max-width: 768px) {
  .fw-lead {
    text-align: left;
    padding: 0 4.27%;
    font-size: 0.8125rem;
  }
}

.fw-pic {
	margin: 1rem 0 2rem;
}
@media (max-width: 768px) {
		.fw-pic {
			margin: 1rem 0;
		}
}

/* ---------- kv & lead ---------- */

/* ---------- Movie ---------- */
.fw-step-movie {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-step-movie {
    margin-top: 40px;
    padding: 0 4.46%;
  }
}

.fw-step-movie_heading {
  width: 90.08%;
  margin: 0 auto;
}
.fw-step-movie_headin img {
  width: 100%;
}
@media (max-width: 768px) {
  .fw-step-movie_heading {
    width: 100%;
  }
}


.fw-step-movie_inner {
  background-color: #fff;
  padding: 60px 250px 50px;
  margin-top: -20px;
}
@media (max-width: 768px) {
  .fw-step-movie_inner {
    padding: 38px 4.66% 20px;
    margin-top: -28px;
  }
}
/* modal
--------------------------------------- */
.js_modal {
  display: block;
  cursor: pointer;
}
.mfp-content .js_modal_movie{
  padding-top: 56.2%;
  position: relative;
  width: 100%;
}
.mfp-content iframe{
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
@media (max-width: 768px) {
  .mfp-content .js_modal_movie{
    padding-top: 50.5%;
    width: 90%;
    margin: 0 auto;
  }
}
.mfp-content .js_modal_close{
  position: absolute;
  top: -40px;
  right: 0%;
}
@media (max-width: 768px) {
  .mfp-content .js_modal_close{
    right: 5%;
  }
}
/* ---------- Movie ---------- */

/* ---------- Join Flow ---------- */
.fw-flow {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-flow {
    margin-top: 30px;
    padding: 0 4.46%;
  }
}

.fw-flow_heading {
  width: 45.42%;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .fw-flow_heading {
    width: 100%;
  }
  .fw-flow_heading img {
    margin: 0 auto;
  }
}

.fw-flow_inner {
  background-color: #fff;
  margin-top: -20px;
  padding-top: 55px;
}
@media (max-width: 768px) {
  .fw-flow_inner {
    margin-top: -28px;
    padding-top: 38px;
  }
}

.fw-flow-step {
  padding: 0 4.46%;
}


.fw-flow-step_img {
  text-align: center;
}

.fw-flow-step-movie {
  margin-top: 45px;
  padding: 0 4.46% 5%;
}
@media (max-width: 768px) {
  .fw-flow-step-movie {
    margin-top: 25px;
  }
}

.fw-flow-step-movie_lead {
  font-size: 1.25rem;
	font-weight: bold;
  color: #ff810e;
  text-align: center;
  background-color: #f2f2f2;
  border-radius: 18px;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_lead {
    font-size: 0.875rem;
  }
}

.fw-flow-step-movie_wrap {
  margin-top: 25px;
  display: flex;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_wrap {
    margin-top: 15px;
    flex-direction: column;
  }
}

.fw-flow-step-movie_item {
  width: 32.16%;
  text-align: center;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_item {
    display: flex;
    width: 100%;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
}

.fw-flow-step-movie_item + .fw-flow-step-movie_item {
  margin-left: 1.7%;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_item + .fw-flow-step-movie_item {
    margin-left: 0;
    margin-top: 11px;
  }
}

.fw-flow-step-movie_text_wrap {
  font-size: 1.8rem;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_text_wrap {
    text-align: left;
    font-size: 1rem;
    flex: 1;
    margin-left: 4.82%;
		line-height: 1.5;
  }
}
.fw-flow-step-movie_number {
  color: #ff810e;
  margin-bottom: 10px;
	font-size: 1.125rem;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_number {
    margin-bottom: 7px;
  }
}

.fw-flow-step-movie_number.mb0 {
	margin-bottom: 0;
}
.fw-flow-step-movie_text {
  margin-bottom: 10px;
  min-height: 56px;
	font-size: 1.125rem;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_text {
    margin-bottom: 0;
    font-size: 0.875rem;
		font-weight: bold;
    min-height: auto;
  }
}

.fw-flow-step-movie_thumbnail img {
  width: 100%;
}
@media (max-width: 768px) {
  .fw-flow-step-movie_thumbnail {
    width: 52.73%;
  }
}

.fw-flow-warning01 {
  margin-top: 50px;
  background-color: #ff810e;
  padding: 35px 0 40px;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .fw-flow-warning01 {
    margin: 25px 4.46% 0;
		padding: 30px 0;
  }
}

.fw-flow-warning_heading01 {
  font-size: 1.5rem;
	font-weight: bold;
}
@media (max-width: 768px) {
  .fw-flow-warning_heading01 {
    font-size: 1rem;;
  }
}

.fw-flow-warning_lead {
  font-size: 1.375rem;
	font-weight: bold;
  width: 414px;
  background-color: #ff3b00;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-flow-warning_lead {
    font-size: 1rem;
    width: auto;
    display: inline-block;
  }
}
.fw-flow-warning_icon {
  max-width: 414px;
	height: auto;
  margin: 10px auto 0;
}
@media (max-width: 768px) {
  .fw-flow-warning_icon {
		max-width: 300px;
  }
}

.fw-flow-warning_list-dot01 {
  margin: 25px auto 0;
  text-align: left;
  margin-left: 25.89%;
	font-size: 1.125rem;
}
.fw-flow-warning_list-dot01 li {
  position: relative;
}
@media (max-width: 768px) {
  .fw-flow-warning_list-dot01 {
    margin: 18px auto 0;
    text-align: left;
    margin-left: 8.77%;
    font-size: 0.875rem;
    padding-right: 4.46%;
  }
  .fw-flow-warning_list-dot01 li {
    font-size: 0.875rem;
  }
}
.fw-flow-warning_list-dot01 li + li {
  margin-top: 5px;
}
@media (max-width: 768px) {
  .fw-flow-warning_list-dot01 li + li {
    margin-top: 8px;
  }
}

.fw-flow-warning_list-dot01 li::before {
  content: '\25CF';
  position: absolute;
  display: inline-block;
	bottom: 0;
  left: -1.1rem;
  font-size: 1rem;
}
@media (max-width: 768px) {
  .fw-flow-warning_list-dot01 li::before {
    top: 2px;
    left: -1rem;
    font-size: 0.875rem;
  }
}


.fw-flow-warning02 {
  margin-top: 3px;
  background-color: #ff810e;
  padding: 35px 0 53px;
  text-align: center;
  color: #fff;
}
@media (max-width: 768px) {
  .fw-flow-warning02 {
    margin: 1px 4.46% 0;
		padding: 30px 0;
  }
}
.fw-flow-warning_heading02 {
  font-size: 1.5rem;
	font-weight: bold;
  text-align: center;
}
@media (max-width: 768px) {
  .fw-flow-warning_heading02 {
    font-size: 1rem;
  }
}
.fw-flow-warning_list-dot02 {
  margin: 25px auto 0;
  text-align: left;
  margin-left: 25.89%;
  padding-right: 4.1%;
}
@media (max-width: 768px) {
  .fw-flow-warning_list-dot02 {
    margin: 17px auto 0;
    margin-left: 8%;
  }
}
.fw-flow-warning_list-dot02 li {
  position: relative;
}
.fw-flow-warning_list-dot02 li::before {
  content: '\30FB';
  display: inline-block;
  position: absolute;
  display: inline-block;
  left: -1.1rem;
  font-size: 1rem;
}
@media (max-width: 768px) {
  .fw-flow-warning_list-dot02 li {
    font-size: 0.75rem;
  }
  .fw-flow-warning_list-dot02 li::before {
    left: -1rem;
    font-size: 0.75rem;
  }
}
/* ---------- Join Flow ---------- */

/* ---------- Family walk Award ---------- */

.fw-award {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-award {
    margin-top: 30px;
    padding: 0 4.46%;
  }
}

.fw-award_heading {
  width: 45.42%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-award_heading {
    width: 100%;
  }
}

.fw-award_inner {
  padding: 55px 4.46% 50px;
  background-color: #fff;
  margin-top: -20px;
}
@media (max-width: 768px) {
  .fw-award_inner {
    padding: 40px 4.46% 25px;
    background-color: #fff;
    margin-top: -28px;
  }
}

.fw-award_lead {
  margin-bottom: 30px;
  font-size: 1.125rem;
  text-align: center;
}
@media (max-width: 768px) {
  .fw-award_lead {
    margin-bottom: 20px;
    font-size: 0.8125rem;
		text-align: left;
  }
}

.fw-award_img {
  width: 100%;
  margin: 0 auto;
}

/* ---------- Family walk Award ---------- */

/* ---------- Application method ---------- */
.fw-method {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-method {
    margin-top: 30px;
    padding: 0 4.46%;
  }
}

.fw-method_heading {
  width: 40.45%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-method_heading {
    width: 100%;
  }
  .fw-method_heading img {
    margin: 0 auto;
  }
}

.fw-method_inner {
  background-color: #fff;
  margin-top: -30px;
  padding: 55px 4.46% 50px;
}
@media (max-width: 768px) {
  .fw-method_inner {
    margin-top: -28px;
    padding: 42px 4.46% 30px;
  }
}

.fw-method_wrap {
  display: flex;
}
@media (max-width: 768px) {
  .fw-method_wrap {
    flex-direction: column;
  }
}

.fw-method01_ttl {
  font-size: 1.8rem;
  position: relative;
  padding-left: 35px;
}
@media (max-width: 768px) {
  .fw-method01_ttl {
    font-size: 1.4rem;
    position: relative;
    padding-left: 1.7rem;
  }
}
.fw-method01_ttl::before {
  content: '\2460';
  display: inline-block;
  color: #7ad300;
  position: absolute;
  left: 0;
  top: 3px;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 800;
}
@media (max-width: 768px) {
  .fw-method01_ttl::before {
    left: 0;
    top: 3px;
    font-size: 1.6rem;
  }
}

.fw-method02 {
  margin-left: 10%;
}
@media (max-width: 768px) {
  .fw-method02 {
    margin-left: 0;
    margin-top: 20px;
  }
}
.fw-method02_ttl {
  font-size: 1.8rem;
  position: relative;
  padding-left: 35px;
}
@media (max-width: 768px) {
  .fw-method02_ttl {
    font-size: 1.4rem;
    position: relative;
    padding-left: 1.7rem;
  }
}
.fw-method02_ttl::before {
  content: '\2461';
  display: inline-block;
  color: #7ad300;
  position: absolute;
  left: 0;
  top: 3px;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 800;
}
@media (max-width: 768px) {
  .fw-method02_ttl::before {
    left: 0;
    top: 3px;
    font-size: 1.6rem;
  }
}

.fw-method-list_dot01 {
  padding-left: 34px;
  margin-top: 23px;
  font-size: 1.4rem;
}
@media (max-width: 768px) {
  .fw-method-list_dot01 {
    padding-left: 8.04%;
    font-size: 1.1rem;
    margin-top: 11px;
  }
}
.fw-method-list_dot01 li + li {
  margin-top: 15px;
}
@media (max-width: 768px) {
  .fw-method-list_dot01 li + li {
    margin-top: 10px;
  }
}
.fw-method-list_dot01 li {
  position: relative;
}
@media (max-width: 768px) {
  .fw-method-list_dot01 li {
    font-size: 1rem;
  }
}
.fw-method-list_dot01 li::before {
  content: '\30FB';
  position: absolute;
  display: inline-block;
  top: 0;
  left: -1.4rem;
  font-size: 1.4rem;
}
@media (max-width: 768px) {
  .fw-method-list_dot01 li::before {
    left: -1rem;
    font-size: 1rem;
  }
}

.fw-requirements {
  margin-top: 40px;
  color: #666666;
}

@media (max-width: 768px) {
  .fw-requirements {
    margin-top: 0px;
  }
}
.fw-requirements_heading {
  font-size: 2rem;
  text-align: center;
  background-color: #f2f2f2;
  border-radius: 18px;
  color: #000;
}
@media (max-width: 768px) {
  .fw-requirements_heading {
    font-size: 1.4rem;
  }
}

.fw-requirements_heading + .fw-method-list_dot02 {
  margin-top: 20px;
}

.fw-method-list_dot02 {
  font-size: 0.75rem;
  padding-left: 1.4rem;
}
@media (max-width: 768px) {
  .fw-method-list_dot02 {
    font-size: 0.625rem;
    padding-left: 1rem;
  }
}

.fw-method-list_num {
  font-size: 0.75rem;
  padding-left: 1.4rem;
}
@media (max-width: 768px) {
  .fw-method-list_num {
    font-size: 0.625rem;
    padding-left: 0.625rem;
  }
}

.fw-method-list_dot02 li {
  position: relative;
}

.fw-method-list_dot02 li::before{
  content: '\30FB';
  position: absolute;
  display: inline-block;
  top: -3px;
  left: -1.1rem;
  font-size: 1rem;
}
@media (max-width: 768px) {
  .fw-method-list_dot02 li::before{
    left: -1rem;
    font-size: 1rem;
  }
}

.fw-requirements02 {
  margin-top: 25px;
}
.fw-requirements_heading02 {
  font-size: 0.75rem;
}
@media (max-width: 768px) {
  .fw-requirements_heading02 {
    font-size: 0.625rem;
  }
}

.fw-method_btn_wrap {
  width: 71.43%;
  margin: 30px auto 0;
}
@media (max-width: 768px) {
  .fw-method_btn_wrap {
    width: calc( 100% + 10px);
    margin: 60px auto 0 -5px;
    text-align: center;
  }
}

.fw-method_btn_wrap_ttl {
  background-color: #fa0000;
  color: #fff;
  font-size: 2.2rem;
  position: relative;
  z-index: 2;
  width: 250px;
  margin: 0 auto;
  line-height: 1;
  text-align: center;
  padding: 8px 0;
}
.fw-method_btn_wrap_ttl img {
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-method_btn_wrap_ttl {
    font-size: 2rem;
    width: 95%;
    text-align: center;
    border-radius: 5px;
    padding: 7px 0 10px;
  }
}

.fw-method_btn_wrap_inner {
  background-color: #fff;
  border: 2px solid #fa0000;
  border-radius: 10px;
  margin-top: -20px;
  padding: 50px 11.5%;
  position: relative;
  z-index: 1;
}

.fw-method .fw-method_btn_wrap_inner .c-roundButton.-label:before {
  display: none;
}

.p-buttonUnit {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 40px;
}

@media (max-width: 768px) {
	.p-buttonUnit {
		display: block;
		text-align: center;
	}
}

.fw-method .fw-method_btn_wrap_inner .p-buttonUnit {
  margin-top: 25px;
}
.fw-method .fw-method_btn_wrap_inner {
  padding: 30px 11.5%;
}

@media (max-width: 768px) {
  .fw-method_btn_wrap_inner {
    border: 1px solid #fa0000;
    margin-top: -15px;
    padding: 20px 0 30px;
  }
  .fw-method_btn_wrap_inner .c-roundButton {
    width: 77.2%;
  }
  .fw-method .fw-method_btn_wrap_inner {
    padding: 25px 0%;
  }
  /* .fw-method .fw-method_btn_wrap_inner .c-roundButton {
    width: 100%;
  } */
  .fw-method .fw-method_btn_wrap_inner .p-buttonUnit {
    margin-top: 20px;
  }
}
/* ---------- Application method ---------- */

/* ---------- ??ï¿½ï¿½?ï¿½ï¿½L??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½ ---------- */
.fw-kyorisoku {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-kyorisoku {
    margin-top: 30px;
    padding: 0 4.46%;
  }
}
.fw-kyorisoku_heading {
  width: 60.54%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-kyorisoku_heading {
    width: 100%;
  }
}

.fw-kyorisoku_inner {
  background-color: #fff;
  margin-top: -30px;
  padding: 60px 4.46% 50px;
}
@media (max-width: 768px) {
  .fw-kyorisoku_inner {
    margin-top: -28px;
    padding: 43px 0 29px;
  }
}

.fw-kyorisoku_lead {
  font-size: 1.125rem;
	font-weight: bold;
  text-align: center;
}
@media (max-width: 768px) {
  .fw-kyorisoku_lead {
    font-size: 0.875rem;
  }
}

.fw-kyorisoku_wrap {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .fw-kyorisoku_wrap {
    margin-top: 20px;
  }
}

.fw-kyorisoku_explanation {
  width: 34.51%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-kyorisoku_explanation {
    width: 51.45%;
  }
}

.fw-kyorisoku_explanation_lead {
  margin-top: 28px;
  text-align: center;
}
@media (max-width: 768px) {
  .fw-kyorisoku_explanation_lead {
    margin-top: 22px;
    font-size: 0.6875rem;
    padding: 0 5.1%;
		text-align: left;
  }
}

.fw-kyorisoku_explanation_img {
  width: 100%;
  margin: 30px auto 0;
}
@media (max-width: 768px) {
  .fw-kyorisoku_explanation_img {
    padding: 0 4.46%;
    margin: 25px auto 0;
  }
}

.fw-kyorisoku_explanation_btn {
  margin-top: 40px;
}
@media (max-width: 768px) {
  .fw-kyorisoku_explanation_btn {
    margin-top: 20px;
  }
  .fw-kyorisoku_explanation_btn .c-roundButton {
    width: 79.3%;
  }
}
/* ---------- ??ï¿½ï¿½?ï¿½ï¿½L??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½??ï¿½ï¿½?ï¿½ï¿½ ---------- */

.fw-oubo {
	margin-top: 60px;
}

@media (max-width: 768px) {
	.fw-oubo {
		padding: 0 4.46%;
	}
}

.fw-oubo_inner {
	background-color: #fff;
	border-radius: 10px;
	margin: -20px auto 0;
	padding: 45px 0 40px;
	position: relative;
	z-index: 1;
}
@media (max-width: 768px) {
	.fw-oubo_inner {
    background-color: #fff;
    padding: 35px 4.66% 30px;
    margin-top: -28px;
	}
}

.lead_wrap {
	display: flex;
	justify-content: center;
	align-items: center;
}
@media (max-width: 768px) {
	.lead_wrap {
		align-items: unset;
	}
}

.fw-oubo_inner figure {
	width: 109px;
	height: auto;
	margin-right: 30px;
}
@media (max-width: 768px) {
	.fw-oubo_inner figure {
		width: 71%;
		margin-top: 0.25rem;
		margin-right: 10px;
	}
}

.fw-oubo_inner .txt {
	text-align: center;
}

.oubo_btn {
	width: 300px;
	height: auto;
	margin: 20px auto;
}
@media (max-width: 768px) {
	.oubo_btn {
		width: 79.3%
	}
}


/* ---------- Photo Gallery ---------- */
.fw-gallery {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-gallery {
    margin-top: 30px;
    padding: 0 4.46%;
  }
}

.fw-gallery_heading {
  width: 40.45%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-gallery_heading {
    width: 100%;
  }
  .fw-gallery_heading img {
    margin: 0 auto;
  }
}

.fw-gallery_inner {
  background-color: #fff;
  padding: 35px 4.46% 50px;
  margin-top: -20px;
	text-align: center;
	font-size: 1.125rem;
}
@media (max-width: 768px) {
  .fw-gallery_inner {
    background-color: #fff;
    padding: 35px 4.66% 30px;
    margin-top: -28px;
  }
}

.fw-gallery_inner .txt {
	margin: 2rem 0;
}
@media (max-width: 768px) {
	.fw-gallery_inner .txt {
		font-size: 0.8125rem;
		margin: 0.5rem 0 1rem;
		text-align: left;
	}
}

.fw-gallery_inner .fw-gallery-lead {
	margin: 1rem 0;
}
@media (max-width: 768px) {
	.fw-gallery_inner .fw-gallery-lead {
		text-align: center;
	}
}

.fw-gallery_inner .areaContent__map {
	margin-bottom: 0;
}


/* modal */f
.mfp-counter {
  display: none;
}
.mfp-close:focus,
.mfp-arrow:focus{
  outline: none;
}
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  font-size: 40px;
  top: -10px;
  right: -7px;
  cursor: pointer;
}
.mfp-zoom-out-cur .mfp-image-holder .mfp-close img{
  margin-left: auto;
  z-index: -1;
  position: relative;
}
.mfp-img {
  cursor: auto;
}
.mfp-image-holder .mfp-content{
  max-width: 70%;
}
.mfp-zoom-out-cur {
  cursor: auto;
}
@media (max-width: 768px) {
  .mfp-arrow-left{
    left: -15px
  }
  .mfp-arrow-right{
    right: -15px
  }
  .mfp-image-holder .mfp-content{
    width: 85%;
    max-width: 100%;
  }
  img.mfp-img{
    width: 100%;
    height: auto;
  }
  .mfp-zoom-out-cur .mfp-image-holder .mfp-close img{
    width: 28px;
  }
}
/* ---------- Photo Gallery ---------- */


/* ---------- Contact ---------- */

.fw-contact {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-contact {
    margin-top: 30px;
  }
}

.fw-contact_inner {
  background-color: #fff;
  border-radius: 10px;
  margin: -20px auto 0;
  padding: 45px 0 40px;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .fw-contact_inner {
    width: 94.13%;
    margin: -18px auto 0;
    padding: 38px 0;
  }
}

.fw-contact_heading {
  position: relative;
  z-index: 2;
  width: 166px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-contact_heading {
    width: 86%;
    text-align: center;
  }
  .fw-contact_heading img {
    margin: 0 auto;
  }
}

.fw-contact_inner > p {
  text-align: center;
}
@media (max-width: 768px) {
  .fw-contact_inner > p {
    font-size: 0.875rem;
    padding: 0 5.95%;
  }
}

.fw-contact_inner .txt {
	margin-top: 20px;
}

.fw-contact_btn {
  margin-top: 20px;
	text-align: center;
}
@media (max-width: 768px) {
  .fw-contact_btn {
    margin-top: 20px;
  }
  .fw-contact_btn .c-roundButton {
    width: 77.2%;
  }
}

.fw-contact .fw-method_btn_wrap_inner .c-roundButton.-label:before {
  display: none;
}

.fw-contact .fw-method_btn_wrap_inner .p-buttonUnit {
  margin-top: 25px;
}
.fw-contact .fw-method_btn_wrap_inner {
  padding: 30px 11.5%;
}
@media (max-width: 768px) {
  .fw-contact .fw-method_btn_wrap_ttl {
    font-size: 2rem;
    width: 90%;
    text-align: center;
    border-radius: 5px;
    padding: 7px 0 10px;
  }
  .fw-contact .fw-method_btn_wrap {
    width: 100%;
    margin: 30px auto 0;
  }

  .fw-contact .fw-method_btn_wrap_inner {
    width: 94.13%;
    margin: -16px auto 0;
    padding: 25px 0;
  }
  .fw-contact .fw-method_btn_wrap_inner .p-buttonUnit {
    margin-top: 20px;
  }
}
/* ---------- Contact ---------- */


/* ---------- Relation ---------- */

.fw-relation {
  margin-top: 60px;
}
@media (max-width: 768px) {
  .fw-relation {
    margin-top: 30px;
  }
}

.fw-relation_inner {
  width: 71.43%;
  background-color: #fff;
  border-radius: 10px;
  margin: -20px auto 0;
  padding: 40px 0 30px;
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .fw-relation_inner {
    width: 94.13%;
    margin: -18px auto 0;
    padding: 35px 0 30px;
  }
}

.fw-relation_heading {
  position: relative;
  z-index: 2;
  width: 166px;
  margin: 0 auto;
  line-height: 1;
}
.fw-relation_heading img {
  margin: 0 auto;
}
@media (max-width: 768px) {
  .fw-relation_heading {
    width: 89.8%;
  }
}

.fw-relation_wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
@media (max-width: 768px) {
  .fw-relation_wrap {
    flex-direction: column;
    padding: 0 5.95%;
  }
}

.fw-relation_item {
  width: 38%;
}
@media (max-width: 768px) {
  .fw-relation_item {
    width: 100%;
  }
}

.fw-relation_item + .fw-relation_item {
  margin-left: 7.5%;
}
@media (max-width: 768px) {
  .fw-relation_item + .fw-relation_item {
    margin-left: 0;
    margin-top: 25px;
  }
}

.fw-relation_item_name {
  text-align: center;
  font-size: 0.9375rem;
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  .fw-relation_item_name {
    font-size: 0.75rem;
    margin-bottom: 7px;
  }
}
.fw-relation_item_img {
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .fw-relation_item_img {
    margin-bottom: 15px;
  }
}
.fw-relation_item_img img {
  font-size: 0;
  line-height: 0;
  width: 100%;
}

.fw-relation_item_lead {
	font-size: 0.875rem;
}

.fw-relation_item_lead > a {
  border-bottom: 1px solid #7f7f7f;
	color: #333;
}
.fw-relation_item_lead > a:hover {
  border-bottom: none;
}
@media (max-width: 768px) {
  .fw-relation_item_lead {
    font-size: 0.6875rem;
  }
}
/* ---------- Relation ---------- */