@charset "utf-8"; 
html {
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}


body {
    width: 100%;
    background: linear-gradient(#CA039F, #141D70);
    font-family: "Noto Sans JP", sans-serif;
    color: #fff;
}


body p {
    font-size: 16px;
    font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}


/*リンク*/
a {
    color: #000;
    text-decoration: none;
}

a:hover {
    color: #000;
    text-decoration: underline;
}


#stage {
    margin: 0 auto;
}


/*==========================================
 ヘッダー
===========================================*/

#header {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 72.5px;
  position: fixed; 
  top: 0;
  left: 0; 
  width: 100%;
  z-index: 99;
}

.header_area {
  display: flex;
  width: 100%;
  max-width: 950px;
  position: relative;
}

.logo {
  padding: 12px 0px 0px 7px;
}

.logo img {
  width: 166px;
}

#globalnav {
  position: absolute;
  right: 0px;
}


/* ここから下がハンバーガーメニューに関するCSS */
  
/* チェックボックスを非表示にする */
.drawer_hidden {
  display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer_open {
  display: flex;
  height: 53.5px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 100;/* 重なり順を一番上にする */
  cursor: pointer;
}

/* ハンバーガーメニューのアイコン */
.drawer_open span,
.drawer_open span:before,
.drawer_open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 30px;
  border-radius: 3px;
  background: #fff;
  transition: 0.5s;
  position: absolute;
}

/* 三本線の一番上の棒の位置調整 */
.drawer_open span:before {
  bottom: 8px;
}

/* 三本線の一番下の棒の位置調整 */
.drawer_open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer_input:checked ~ .drawer_open span {
  background: rgba(255, 255, 255, 0);
  transition: .0s;
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer_input:checked ~ .drawer_open span::before {
  bottom: 0;
  transform: rotate(30deg);
  transition: .0s;
}
#drawer_input:checked ~ .drawer_open span::after {
  top: 0;
  transform: rotate(-30deg);
  transition: .0s;
}

/* ×印をクリックした時のアニメーション */

#drawer_input:not(:checked) ~ .drawer_open span::before {
  transform: rotate(0deg);
  transition: .0s; /* アニメーション時間 */
}
#drawer_input:not(:checked) ~ .drawer_open span::after {
  transform: rotate(0deg);
  transition: .0s; /* アニメーション時間 */
}

/* メニューのデザイン*/
.nav_content {
  width: 100%;
  height: 440px;
  position: fixed;
  top: 0;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: linear-gradient(to bottom, rgb(208, 1, 160, 0.9), rgb(11, 30, 110, 0.9));
  transition: .0s;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input:checked ~ .nav_content {
  left: 0;/* メニューを画面に入れる */
}


.nav_content_area {
  margin: 0 auto;
  padding: 45px 0px 0px 0px;
  width: 78%;
  height: 350px;
  max-width: 750px;
}

.nav_list {
  list-style: none;/* メニュー黒ポチを消す */
}

.nav_list li:not(.nav_contact) {
border-bottom: 0.5px solid #fff;
height: 34px;
margin-top: 23px;
}

.nav_list li a:hover {
  text-decoration: none;
}


.nav_list p {
  color: #fff;
  font-size: 18px;
  font-family: "Noto San Serif JP", sans-serif;
	font-weight: 700;
}

.nav_list p:hover:not(.notcolor) {
  opacity: 0.7;
}


.contactbtn p {
  color: #fff;
  font-size: 21px;
  font-family: "Noto San Serif JP", sans-serif;
	font-weight: 700;
}



/* 丸矢印 */
.nav_list span {
  display: block;
  float: right;
  clear: right;
 }

.arrow {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #000;
  display: inline-block;
  position: relative;
}
.arrow::before {
  display: inline-block;
  position: absolute;
  content: "";
	width: 8px;
	height: 8px;
  top: 0;
  left: 0;
  right: 4px;
  bottom: 0;
  margin: auto;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}


/* 相談ボタン */

.contactbtn a {
 background-color: #D001A0; 
 width: 270px;
 height: 46px;
 border-radius: 50px;
 position: relative;
 display: flex;
 justify-content: center;
 align-items: center;
}
 
.contactbtn p {
  position: absolute;
  width: 270px;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.contactbtn span {
  position: absolute;
  right: 12px;
}



.contactbtn a:hover {
  opacity: 0.8;
 }

 .contactbtn p:hover {
  color: #000;
}


.nav_contact {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 27px;
} 



/*==========================================
 フローティングボタン
===========================================*/

.floating {
  width: 114px;
  height: 114px;
  position: fixed;
  bottom: -5px; /* バナーの上下の位置 */
  right: 5px; /* バナーの左右の位置 */
  z-index: 97;
  filter: drop-shadow(3px 0px 6px rgb(131, 109, 78));
}


.floating img {
  display: block;
}

.floating p {
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
  color: #fff;
  width: 100%;
  font-size: 19px;
  font-family: "Noto San Serif JP", sans-serif;
	font-weight: 700;
  text-align: center;
}

.floating:hover {
  opacity: 0.7;
}


/*==========================================
 FVアニメーション
===========================================*/

.fv_area {
  width: 100%;
  height: 450px;
}

.fvimages img {
  width: 100%;
  position: absolute;
  height: 450px;
  object-fit: cover;
  animation  : slideAnime 12s ease infinite;
}

.fvimages img:nth-of-type(1) { animation-delay: 0s }
.fvimages img:nth-of-type(2) { animation-delay: 2s }
.fvimages img:nth-of-type(3) { animation-delay: 4s }
.fvimages img:nth-of-type(4) { animation-delay: 6s }
.fvimages img:nth-of-type(5) { animation-delay: 8s }
.fvimages img:nth-of-type(6) { animation-delay: 10s }

@keyframes slideAnime{
  0% { opacity: 0;}
  2% { opacity: 1;}
 18% { opacity: 1;}
 20% { opacity: 0;}
100% { opacity: 0;}
}

/*==========================================
 FVコピー
===========================================*/

.catchphrase {
  writing-mode: vertical-rl;
  position: absolute;
  font-size: 17px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 160%;
  color: #fff;
  margin: 90px 0px 0px 0px;
  padding-left: 26px;
  z-index: 98;
}


/*==========================================
 FV斜め帯
===========================================*/

#obi_stage {
  overflow: clip;
}

.header_obi {
  position: sticky;
  top: -58px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 100%;
  position: absolute;
  top: 0px;
}

/*==========================================
 カテゴリタイトルデザイン
===========================================*/

.categorytitle {
  max-width: 950px;
  padding: 70px 26px 0px 26px;
}

.wakuwaku {
  position: relative;
  width: 94px;
  height: 28px;
}

.wakuwaku:before,
.wakuwaku:after {
  position: absolute;
  content: '';
}

.wakuwaku:after {
  top: 0;
  left: 0;
  width: 86px;
  height: 25px;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
}

.wakuwaku:before {
  right: 0;
  bottom: 0;
  width: 86px;
  height: 25px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

.wakuwaku p {
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.midashi {
  font-size: 27px;
  font-family: "Noto sans JP", sans-serif;
  font-weight: 700;
  margin: 10px 0px 0px 0px;
}


/* お問い合わせページ */
.categorytitle_kasou {
  max-width: 950px;
  padding: 105px 26px 0px 26px;
}


/*==========================================
 サービスエリア
===========================================*/

#service {
  overflow: hidden;
}

.service_area {
  max-width: 950px;
  right: 0;
  left: 0;
  margin: 0 auto;
  position: relative;
}

/* レタッチエリア */
.retouchimg {
  position: relative;
  margin: 40px 26px 0px 26px;
}

.retouchimgcenter {
  text-align: center;
 }

.retouchimg img {
  width: 100%;
  margin-bottom: 10px;
  max-width: 450px;
}

.retouchimgcaption {
  line-height: 150%;
  margin: auto;
  margin-bottom: 80px;
  max-width: 450px;
}

  /*==========================================
補正メニュー（スマホ）
===========================================*/

#retouch_menu {
  background-color: #000;
  padding: 40px 0px;
}

#retouch_menu h2 {
  text-align: center;
  font-size: 24px;
  margin-bottom: 30px;
}

#retouch_menu p {
  font-size: 18px;
  width: 270px;
  margin: auto;
  line-height: 210%;
}

#retouch_menu p span {
  display: inline-block;
}
 .span1, .span3 {
  margin-right: 70px;
 }

 .span5 {
  margin-right: 34px;
 }


/*==========================================
価格例（スマホ）
===========================================*/


.price_area {
  max-width: 950px;
  right: 0;
  left: 0;
  margin: 0 auto;
  position: relative;
}

.price {
  position: relative;
  margin: 0px 0px 90px 0px;
}


.priceretouch p {
  text-align: center;
  margin-top: 20px;
}

.pricefont {
  font-size: 34px;
  font-family: "Noto San Serif JP", sans-serif;
  font-weight: 700;
  padding: 0px 5px 0px 10px;
}

.pricefont_en {
  font-weight: 700;
}

.shame_price {
  padding-top: 5px;
}


.priceretouch1 {
  border-bottom: #fff 1px solid;
  padding-top: 50px;
  padding-bottom: 30px;
  width: 300px;
  margin: auto;
  text-align: center;
}

.priceretouch2 {
  margin: auto;
  text-align: center;
  padding-top: 20px;
  padding-bottom: 10px;
}



.obi {
  background-color: #000;
  max-width: 300px;
  width: 80%;
  height: 40px;
  margin: 0 auto;
  position: relative;
  margin-top: 30px;
}

.obi p {
  color: #fff;
  width: 300px;
  text-align: center;
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.nouki {
  text-align: center;
  margin: 20px 0 60px 0;
}

.bodyp {
  max-width: 300px;
  width: 80%;
  margin: auto;
  line-height: 160%;
}

/*==========================================
相談する（スマホ）
===========================================*/

#contactlink {
  background-color: #000;
  height: 200px;
  position: relative;
}

.contactcaption {
  position: absolute;
  color: #fff;
  font-size: 16px;
  line-height: 150%;
  text-align: center;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

.contactcaption :not(.notcolor, .arrow) {
  margin-bottom: 15px;
}



/*==========================================
その他のサービス（スマホ）
===========================================*/

.other_area {
  margin: 0px 0px 70px 0px;
}

.other_area .bodyp {
  margin-top: 40px;
}



  /*==========================================
SNS（スマホ）
===========================================*/


#snslink {
  height: 180px;
  border-top: #fff 1px solid;
  max-width: 300px;
  width: 80%;
  margin: auto;
}

#snslink p {
  text-align: center;
  margin: 40px 0px 35px 0px;
}

.snsbtn {
  display: flex;
  justify-content: center;
  align-items: center;
}

.snsbtn img {
  height: 32px;
}

.snsbtn_x {
  margin-right: 50px;
  width: 32px;
  height: 32px;
  float: left;
  clear: left;
  }
  

 .snsbtn_insta {
    width: 32px;
    height: 32px;
    display: flex;
    }
    


  /*==========================================
フッター（スマホ）
===========================================*/

#footer {
  background-color: #000;
  height: 445px;
  text-align: center;
  color: #fff;
  position: relative;
}

#footer a, #footer p {
  color: #fff;
  font-size: 16px;
  font-family: "Noto San Serif JP", sans-serif;
}

.footermenu {
  margin-top: 40px;
}


.footermenu a {
  display: block;
  width: 115px;
  margin: 0 auto;
}


.footermenu p {
  margin-bottom: 50px;
}


.copyright {
  position: absolute;
  width: 100%;
  bottom: 116px;
  left: 50%;
  transform: translate(-50%);
}

.copyright p {
  margin-bottom: -7px;
}

.copyright small {
  font-size: 12px;
  line-height: 150%;
}


  /*==========================================
コンタクトページ（スマホ）
===========================================*/

.contact_title {
  background-color: #000;
  color: #fff;
  font-size: 19px;
  max-width: 300px;
  width: 80%;
  height: 40px;
  text-align: center;
  margin: 0 auto;
  align-items: center;
  line-height: 40px;
  margin-top: 50px;
}

.bannermediainfocopyp {
  max-width: 380px;
  width: 80%;
  margin: 0 auto;
  position: relative;
}

.bannermediainfocopyp p {  
  line-height: 150%;
  padding: 20px 0px;
}



.line_area {
  display: block;
  width: 170px;
  margin: auto;
  margin-top: 40px;
}

.linebtn {
  width: 170px;
}

.lineid {
  text-align: center;
  margin: 15px 0 30px 0;
  line-height: 140%;
}

  /*==========================================
フォーム（スマホ）
===========================================*/
form {
  max-width: 400px;
  width: 80%;
  margin: auto;
  margin-top: 40px;
  margin-bottom: 125px;
}


label{
display: flex;
margin-bottom: 7px;
}


input[type="text"],input[type="email"] {
width: 100%;
height: 35px;
appearance: none;
border: #808080 solid 1pt;
margin-bottom: 30px;
}

.datelabel{
  display: block;
  width: 100%;
  height: 35px;
  }

input[type="date"] {
  appearance: none;
  border: #808080 solid 1pt;
  width: 100%;
  height: 35px;
  margin-top: 7px;
}

.date_caption {
  font-size: 14px;
  line-height: 140%;
  margin-top: 40px;
  margin-bottom: 30px;
}

 textarea {
  width: 100%;
  height: 130px;
  appearance: none;
  border: #808080 solid 1pt;
}

form span {
  background-color: #E95052;
  color: #fff;
  font-size: 80%;
  margin-left: 5px;
  padding: 0 5px 0 5px;
  line-height: 125%;
}

.form_caption {
  font-size: 14px;
  line-height: 140%;
  margin-top: 10px;
}

.cbox_area {
  display: flex;
  align-items: center;
  margin-top: 30px;
  position: relative;
}

.cbox_area .form_caption {
  font-size: 16px;
  line-height: 140%;
  margin-top: 12px;
}

.cbox_area label {
	padding-left:		38px;
	display:		inline-block;
	cursor:			pointer;
	position:		relative;
}

.cbox_area label:before {
	content:		'';
	width:			25px;
	height:			25px;
  left: 0px;
  top: 15px;
	display:		inline-block;
	position:		absolute;
	background-color:	#fff;
  border: #808080 solid 1pt;
	border-radius:		5px 5px 5px 5px;
}

input[type="checkbox"] {
position: absolute;
top: 19px;
left: 3px;
opacity: 0;
}

.cbox_area input[type=checkbox]:checked + label:before {
	content:		'\2713';		/* チェックの文字 */ 
	font-size:		25px;			/* チェックのサイズ */
	color:			#fff;			/* チェックの色 */
	background-color:	 #D001A0;			/* チェックした時の色 */
  text-align: center;
  line-height: 100%;
}


.submit_area {
  text-align: center;
}

input[type="submit"] {
  appearance: none;
  width: 80%;
  height: 56px;
  border: none;
  border-radius: 100px 100px 100px 100px;
  background-color:  #D001A0;;
  margin-top: 60px;
  display: inline-block;
  font-size: 20px;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  cursor:			pointer;
}

input[type="submit"]:hover {
  background-color: #000;
  color: #fff;
}


  /*==========================================
サンクスページ（スマホ）
===========================================*/

.thanks_copyp {
  max-width: 380px;
  width: 80%;
  margin: 0 auto;
  margin-top: 20px;
  margin-bottom: 90px;
  position: relative;
}

.thanks_copyp p {  
  line-height: 160%;
  padding: 20px 0px;
}

.thanks_footerbottom{
  background-color: #000;
  height: 100vh;
}

.thanks_back {
  background: linear-gradient(#CA039F, #141D70);
}


  /*==========================================
制作の流れ（スマホ）
===========================================*/

.flow_area {
  margin-top: 110px;
  margin-bottom: 80px;
}

.flow_step_area {
  max-width: 450px;
  position: relative;
  margin: auto;
  margin-bottom: 65px;
}

.flow_title {
  background-color: #000;
  color: #fff;
  font-size: 18px;
  width: 80%;
  height: 40px;
  text-align: center;
  margin: 0 auto;
  align-items: center;
  line-height: 40px;
  position: relative;
}

.step_no_left {
  background-color:#CA039F;
  color: #fff;
  font-size: 15px;
  width: 61px;
  height: 43px;
  display: inline-block;
  padding: 23px 7px 9px 7px;
  text-align: right;
  position: absolute;
  top: -57px;
}

.step_no_right {
  background-color:#CA039F;
  color: #fff;
  font-size: 15px;
  width: 61px;
  height: 43px;
  display: inline-block;
  padding: 23px 7px 9px 7px;
  text-align: left;
  position: absolute;
  top: -57px;
  right: 0;
}

.step_no_left span, .step_no_right span {
 font-size: 30px;
 font-weight: 700;
 font-family: "Noto Sans JP", sans-serif;
 display: block;
 padding-top: 3px;
}

 
 

  /*==========================================
よくある質問（スマホ）
===========================================*/

.faq_area {
  margin-top: 50px;
  margin-bottom: 90px;
}

.accordion {
  max-width: 450px;
  position: relative;
  margin: auto;
  margin-bottom: 65px;
}

.toggle {
	display: none;
}

.accordion .Label {		/*タイトル*/
  display: block;
  background-color: #000;
	color: #fff;
  width: 80%;
  height: auto;
  margin: 0 auto;
  align-items: center;
  line-height: 140%;
  cursor: pointer;
  padding: 1px 0px;
}

.accordion .Label p {		/*タイトル*/
  font-size: 18px;
  margin: 8px 28px 8px 15px;
}

.accordion .Label::before{		/*タイトル横の矢印*/
	content:"";
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top:calc( 50% - 5px );
	right: 10px;
	transform: rotate(135deg);
}

.accordion .Label,
.accordion .content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}

.accordion .content {		/*本文*/
	width: 80%;
  height: 0;
	margin: auto;
	overflow: hidden;
  margin-bottom: 4px;
}

.accordion .content p {
  line-height: 150%;
  font-size: 16px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  margin-top: -5px;
  margin-bottom: 15px;
}

.accordion .toggle:checked + .Label + .content {	/*開閉時*/
	height: auto;
	padding:20px ;
	transition: all .3s;
}

.accordion .toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
  top:calc( 50% - 2px );
}





  /*==========================================
利用規約（スマホ）
===========================================*/


.tos_area {
  max-width: 400px;
  width: 80%;
  position: relative;
  margin: auto;
  margin-top: 50px;
  margin-bottom: 90px;

}

.tos_title {
  font-size: 20px;
  line-height: 130%;
  font-weight: 700;
  font-family: "Noto San Serif JP", sans-serif;
  margin-bottom: 10px;
}

.tos_text {
  line-height: 150%;
  margin-bottom: 45px;
}

#policy_top {
  margin-top: -110px;
}








/* 小さいSP向けレイアウトの指定：425px〜484pxレイアウト */

@media only screen and (min-width: 425px) {

  /*==========================================
 FV斜め帯
===========================================*/

.header_obi {
  position: sticky;
  top: -58px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 100%;
  position: absolute;
  top: -15px;
}

}



@media only screen and (min-width: 485px) {

  /*==========================================
 FV斜め帯
===========================================*/

.header_obi {
  position: sticky;
  top: -63px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 100%;
  position: absolute;
  top: -20px;
}




/*==========================================
 FVコピー
===========================================*/

.catchphrase {
  font-size: 18.5px;
  margin: 90px 0px 0px 0px;
  padding-left: 36px;
}

}

/* PC向けレイアウトの指定：501〜560pxレイアウト */
@media only screen and (min-width: 501px) {

  /*==========================================
 FV斜め帯
===========================================*/

.header_obi {
  position: sticky;
  top: -52px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 100%;
  position: absolute;
  top: -75px;
}

}




/* PC向けレイアウトの指定：561〜939pxレイアウト */
@media only screen and (min-width: 561px) {


  /*==========================================
 FVイメージ（PC）
===========================================*/

.fvimages img {
  width: 100%;
}


  /*==========================================
 FV斜め帯
===========================================*/

.header_obi {
  position: sticky;
  top: -52px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 561px;
  position: absolute;
  top: -89px;
}


/*==========================================
 FVコピー
===========================================*/

.catchphrase {
  font-size: 19.5px;
  margin: 90px 0px 0px 0px;
  padding-left: 56px;
}

}



/* PC向けレイアウトの指定：802〜851pxレイアウト */
@media only screen and (min-width: 802px) {

 /* レタッチエリア */
.retouchimg {
  width: 750px;
  margin: 40px auto;
}

.retouchimg_left {
  width: 346px;
  left: 0;
}

 .retouchimg_right {
  width: 346px;
  position: absolute;
  right: 0;
  margin-top: -332px;
 }

.retouchimg img {
  width: 346px;  
}

.retouchimgcaption {
  line-height: 150%;
  margin: auto;
  margin-bottom: 80px;
  width: 346px;
}


}



/* PC向けレイアウトの指定：940px以上では固定レイアウト */
@media only screen and (min-width: 940px) {

  /*==========================================
 ヘッダー
===========================================*/

#header {
  height: 85px;
}

.logo {
  padding: 20px 0px 0px 14px;
}

.logo img {
  width: 190px;
}


  /*==========================================
 グローバルメニュー（PC）
===========================================*/
  
/* ハンバーガーアイコンの設置スペース */
.drawer_open {
  display: none;
  cursor: pointer;
  pointer-events: none
}


/* メニューのデザイン*/
.nav_content {
  width: 100%;
  height: 0px;
  top: 0;
  left: 0; /* メニューを画面の外に飛ばす */
  transition: .0s;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input:checked ~ .nav_content {
  left: 0;/* メニューを画面に入れる */
}


.nav_content_area {
  padding: 35px 0px 0px 0px;
  width: 100%;
  height: 0px;
  max-width: 950px;
  position: relative;
}

.nav_list {
  list-style: none;/* メニュー黒ポチを消す */
  display: flex;
  position: absolute;
  right: 14px;
}

.nav_list li:not(.nav_contact) {
border-bottom: 0px;
margin-top: 0px;
margin-left: 25px;
}

.nav_list li a:hover {
  text-decoration: none;
}


.nav_list p {
  color: #fff;
  font-size: 16px;
  font-family: "Noto San Serif JP", sans-serif;
  font-weight: 700;
}

.nav_list p:hover:not(.notcolor) {
  opacity: 0.7;
}


.contactbtn p {
  color: #fff;
  font-size: 16px;
  font-family: "Noto San Serif JP", sans-serif;
  font-weight: 700;
}


/* 丸矢印 */
.nav_list span {
  display: none;
 }



/* 相談ボタン */

.contactbtn a {
  background-color: #D001A0; 
  border: 2px solid #fff;
  width: 110px;
  height: 40px;
  position: relative;
  display: flex;
  margin-left: 25px;
 }
  
 .contactbtn p {
  width: 110px;
  height: 40px;
}

 .nav_contact {
   display: flex;
   justify-content: center;
   align-items: center;
   margin-top: -17px;
 } 
 
 
 
 /*==========================================
 フローティングボタン
===========================================*/

.floating {
  width: 150px;
  height: 150px;
}

.floating img {
  width: 150px;
}

.floating p {
  font-size: 26px;
}



  /*==========================================
 FVイメージ（PC）
===========================================*/
.fv_area {
  width: 100%;
  height: 784px;
}

.fvimages img {
  position: absolute;
  width: 100%;
  height: 784px;
  object-fit: cover;
}


  /*==========================================
 FV斜め帯
===========================================*/

.header_obi {
  position: sticky;
  top: -62px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 940px;
  position: absolute;
  top: -160px;
  left: -120px;
}


/*==========================================
 FVコピー
===========================================*/

.catchphrase_area {
  position: relative;
  max-width: 950px;
  height: 784px;
  right: 0;
  left: 0;
  margin: 0 auto;
}

.catchphrase {
  font-size: 30px;
  margin: 115px 0px 0px 26px;
  
}


/*==========================================
 カテゴリタイトルデザイン
===========================================*/

.categorytitle {
  max-width: 950px;
  padding: 80px 0px 0px 0px;
}

.wakuwaku {
  width: 116px;
  height: 37px;
}


.wakuwaku:after {
  width: 106px;
  height: 33px;
}

.wakuwaku:before {
  width: 106px;
  height: 33px;
}

.wakuwaku p {
  font-size: 16px;
}

.midashi {
  font-size: 36px;
  margin: 15px 0px 0px 0px;
}


/* お問い合わせページ */
.categorytitle_kasou {
  padding: 160px 0px 0px 0px;
}

/*==========================================
 サービスエリア
===========================================*/

.service_area {
  width: 800px;
}

/* レタッチエリア */
.retouchimg {
  margin: 80px 0px 120px 0px;
  width: 800px;
}


.retouchimg img {
  margin-bottom: 20px;
}

.retouchimgcaption p {
  line-height: 150%;
  font-size: 20px;
}




  /*==========================================
補正メニュー（PC）
===========================================*/

#retouch_menu {
  background-color: #000;
  padding: 40px 0px 60px 0px;
}

#retouch_menu h2 {
  text-align: center;
  font-size: 26px;
  margin-bottom: 40px;
}

#retouch_menu p {
  font-size: 20px;
  width: 704px;
  margin: auto;
  line-height: 210%;
}

#retouch_menu p span {
  display: inline-block;
}
 .span1 {
  margin-right: 152px;
 }

.span2 {
  margin-right: 172px;
 }

 .span4 {
  margin-right: 152px;
 }

 .span5 {
  margin-right: 132px;
 }

 .span7,.span8 {
  margin-right: 92px;
 }




 /*==========================================
価格例（PC）
===========================================*/

.price_area {
  max-width: 800px;
}

.price {
  margin: 0px 0px 100px 0px;
}


.priceretouch1 p, .priceretouch2 p {
  font-size: 21px;
}


.pricefont {
  font-size: 42px;
  padding: 0px 10px 0px 15px;
}



.priceretouch1 {
  border-right: #fff 2px solid;
  border-bottom: 0px;
  width: 397px;
  height: 60px;
  padding-top: 20px;
  padding-bottom: 0px;
  display: inline-block;

}


.priceretouch2 {
  width: 397px;
  height: 60px;
  padding-top: 10px;
  padding-bottom: 0px;
  display: inline-block;

}

.priceretouch_area {
  text-align: center;
  margin: 80px 0 70px 0;
}

.obi {
  max-width: 500px;
  height: 55px;
  margin-top: 50px;
}


.obi p {
  font-size: 22px;
  width: 400px;
}

.nouki {
  font-size: 22px;
  margin: 20px 0 70px 0;
}

.bodyp {
  max-width: 500px;
  padding-bottom: 40px;
}



  /*==========================================
相談する（PC）
===========================================*/

#contactlink {
  height: 300px;
}


.contactcaption p {
  font-size: 18px;
  line-height: 150%;
}

.contactcaption :not(.notcolor, .arrow) {
  margin-bottom: 20px;
}


#contactlink .contactbtn a {
  background-color: #D001A0; 
  border: 0px solid #fff;
  width: 380px;
  height: 68px;
  border-radius: 60px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 0px;
 }
  
 #contactlink  .contactbtn p {
   position: absolute;
   width: 380px;
   height: 68px;
   display: flex;
   justify-content: center;
   align-items: center;
   font-size: 30px;
 }
 
 #contactlink .contactbtn span {
   position: absolute;
   right: 20px;
   width: 30px;
   height: 30px;
 }
 


  /*==========================================
その他サービス（PC）
===========================================*/

.other_area {
  width: 800px;
  right: 0;
  left: 0;
  margin: 0 auto;
  position: relative;
}


.other_area .bodyp {
  padding: 60px 0 80px 0;
}



/*==========================================
SNS（PC）
===========================================*/

#snslink {
  height: 200px;
  max-width: 500px;
  padding: 10px 0 40px 0;
}


#snslink p {
  font-size: 18px;
  text-align: center;
  margin: 50px 0px 35px 0px;
}

.snsbtn img {
  height: 40px;
}

.snsbtn_x {
  margin-right: 60px;
  width: 40px;
  height: 40px;
  float: left;
  clear: left;
  }
  

 .snsbtn_insta {
    width: 40px;
    height: 40px;
    display: flex;
    }
    

  /*==========================================
フッター（PC）
===========================================*/

#footer {
  height: 245px;
}

.footermenu {
  display: flex;
  max-width: 625px;
  margin: 0 auto;
  margin-top: 60px;
}


.footermenu a {
  display: block;
  width: 115px;
  margin: 0 auto;
}

.footermenu p {
  margin-bottom: 0px;
}

.copyright {
  bottom: 20px;
}

.copyright small {
  font-size: 12px;
  line-height: 150%;
}

 /*==========================================
コンタクトページ（PC）
===========================================*/

.contact_title {
  background-color: #000;
  color: #fff;
  font-size: 22px;
  max-width: 100%;
  height: 55px;
  text-align: center;
  margin: 0 auto;
  align-items: center;
  line-height: 55px;
  margin-top: 70px;
}

.line_area {
  display: block;
  width: 230px;
  margin: auto;
  margin-top: 50px;
}

.linebtn {
  width: 230px;
}

.lineid {
  text-align: center;
  margin: 20px 0 50px 0;
  font-size: 20px;
}

.bannermediainfocopyp {
  max-width: 500px;
}

.bannermediainfocopyp p {  
  line-height: 150%;
  padding: 26px 0px;
  font-size: 18px;
}



  /*==========================================
フォーム（PC）
===========================================*/
form {
  max-width: 800px;
  margin: auto;
  margin-top: 60px;
  margin-bottom: 145px;
  position: relative;
}

.form_pc {
 display: block;
 margin-bottom: 60px;
}

.form_pc2 {
  display: block;
  margin-top: 115px;
 }

 
label{
display: inline-block;
margin-bottom: 7px;
margin-top: 12px;
font-size: 18px;
}


input[type="text"],input[type="email"] {
width: 430px;
height: 40px;
appearance: none;
border: #808080 solid 1pt;
margin-bottom: 30px;
position: absolute;
right: 0;
font-size: 18px;
}


input[type="date"] {
  appearance: none;
  border: #808080 solid 1pt;
  width: 430px;
  height: 42px;
  position: absolute;
  right: 0;
  font-size: 18px;
  margin-top: -7px;
}

.date_caption {
  font-size: 17px;
  line-height: 140%;
  margin-top: -47px;
  position: absolute;
  display: block;
  right: 0;
}

 textarea {
  width: 430px;
  height: 200px;
  appearance: none;
  border: #808080 solid 1pt;
  position: absolute;
  right: 0;
  font-size: 18px;
}

form span {
  background-color: #E95052;
  color: #fff;
  font-size: 80%;
  margin-left: 5px;
  padding: 0 5px 0 5px;
  line-height: 125%;
}


.form_caption:not(:first-child) {
  line-height: 140%;
  margin-top: 190px;
  font-size: 18px;
  width: 430px;
  position: absolute;
  right: 0;
  margin-top: 182px;
}

.form_caption {
  line-height: 140%;
  margin-top: 10px;
  font-size: 18px;
}

.cbox_area .form_caption {
  font-size: 18px;
}


.cbox_area {
  display: flex;
  align-items: center;
  position: relative;
  font-size: 17px;
  width: 80%;
  margin: 0 auto;
  margin-top: 300px;
}


input[type="checkbox"] {
  position: absolute;
  top: 32px;
  left: 3px;
  opacity: 0;
  }


.cbox_area input[type=checkbox]:checked + label:before {
	content:		'\2713';		/* チェックの文字 */ 
	font-size:		25px;			/* チェックのサイズ */
  text-align: center;
  line-height: 90%;
	color:			#fff;			/* チェックの色 */
	background-color:	 #D001A0;;			/* チェックした時の色 */
}



input[type="submit"] {
  appearance: none;
  width: 400px;
  height: 68px;
  border: none;
  border-radius: 100px 100px 100px 100px;
  background-color:  #D001A0;
  margin-top: 80px;
  display: inline-block;
  font-size: 24px;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  cursor:			pointer;
}


  /*==========================================
サンクスページ（PC）
===========================================*/

.thanks_copyp {
  max-width: 600px;
}

.thanks_copyp p {  
  line-height: 160%;
  padding: 36px 0px;
  font-size: 18px;
}


  /*==========================================
制作の流れ（PC）
===========================================*/

.flow_area {
  margin-top: 120px;
  margin-bottom: 110px;
}

.flow_step_area {
  max-width: 640px;
  position: relative;
  margin: auto;
  margin-bottom: 120px;
}

.flow_title {
  background-color: #000;
  color: #fff;
  font-size: 20px;
  width: 80%;
  height: 55px;
  text-align: center;
  margin: 0 auto;
  align-items: center;
  line-height: 55px;
  position: relative;
}


.step_no_left {
  background-color: #CA039F;
  color: #fff;
  font-size: 20px;
  width: 95px;
  height: 65px;
  display: inline-block;
  padding: 35px 5px 0px 0px;
  text-align: right;
  position: absolute;
  top: -72px;
}

.step_no_right {
  background-color: #CA039F;
  color: #fff;
  font-size: 20px;
  width: 95px;
  height: 65px;
  display: inline-block;
  padding: 35px 0px 0px 5px;
  text-align: left;
  position: absolute;
  top: -72px;
  right: 0;
}

.step_no_left span, .step_no_right span {
 font-size: 40px;
 font-weight: 700;
 font-family: "Noto Sans JP", sans-serif;
 display: block;
 padding-top: 0px;
}






  /*==========================================
よくある質問（PC）
===========================================*/

.faq_area {
  margin-top: 60px;
  margin-bottom: 120px;
}

.accordion {
  max-width: 800px;
  position: relative;
  margin: auto;
  margin-bottom: 65px;
}

.toggle {
	display: none;
}

.accordion .Label {		/*タイトル*/
  display: block;
  background-color: #000;
	color: #fff;
  width: 80%;
  height: auto;
  margin: 0 auto;
  align-items: center;
  line-height: 140%;
  cursor: pointer;
  padding: 1px 0px;
}

.accordion .Label p {		/*タイトル*/
  font-size: 20px;
  margin: 16px 28px 16px 25px;
}


.accordion .content {		/*本文*/
	width: 80%;
  height: 0;
	margin: auto;
	overflow: hidden;
  margin-bottom: 4px;
}

.accordion .content p {
  line-height: 160%;
  font-size: 18px;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  margin-top: 0px;
  margin-bottom: 30px;
}



  /*==========================================
利用規約（PC）
===========================================*/


.tos_area {
  max-width: 600px;
  position: relative;
  margin: auto;
  margin-top: 60px;
  margin-bottom: 160px;
}

.tos_title {
  font-size: 22px;
  line-height: 130%;
  font-weight: 700;
  font-family: "Noto San Serif JP", sans-serif;
  margin-bottom: 15px;
}

.tos_text {
  font-size: 18px;
  line-height: 160%;
  margin-bottom: 55px;
}

#policy_top {
  margin-top: -150px;
}

 }





/* PC向けレイアウトの指定：1300px以上では固定レイアウト */
@media only screen and (min-width: 1300px) {

    /*==========================================
 FV斜め帯
===========================================*/

.header_obi {
  position: sticky;
  top: -92px;
  z-index: 98;
  }
  
.header_obi img {
  opacity: 0.8;
  width: 940px;
  position: absolute;
  top: -150px;
  left: 0px;
}


}



/* PC向けレイアウトの指定：1500px以上では固定レイアウト */
@media only screen and (min-width: 1540px) {

  /*==========================================
FV斜め帯
===========================================*/

.header_obi {
position: sticky;
top: -80px;
z-index: 98;
}

.header_obi img {
opacity: 0.8;
width: 1040px;
position: absolute;
top: -165px;
left: 0px;
}


}
