.reserve a@charset "utf-8";
/* CSS Document */

header.header {
  z-index: 1;
}

body {
  display: block;
  margin: 0 auto;
}

main {
  color: #847e79;
}

h2 {
  margin: 0 auto;
}

p {
  line-height: 1.5;
}

.m-mt-l {
  margin-top: 40px;
}

.op:hover {
  opacity: 0.7;
  zoom: 1;

  -ms-filter: "alpha( opacity=70 )";
  filter: alpha(opacity=70);
}

a.op:hover img {
  opacity: 0.7;
  zoom: 1;

  -ms-filter: "alpha( opacity=70 )";
  filter: alpha(opacity=70);
}

.left {
  float: left;
}

.right {
  float: right;
}

.clear {
  clear: both;
  zoom: 1;
}

.clear:before,
.clear:after {
  display: block;
  overflow: hidden;
  height: 0;
  content: "";
}

.clear:after {
  clear: both;
}

h3.title {
  margin: 30px auto;
}

h3.title img {
  height: 65px;
}

.seemore {
  display: block;
  width: 230px;
  height: 56px;
  margin: 30px auto;
  padding: 15px 0 0;
  border: 1px solid #a6a09a;
  background-color: #fff;
  box-shadow: 4px 5px 0 #a6a09a;
}

.seemore:hover {
  box-shadow: none;
  transform: translateY(4px);
}

.seemore img {
  width: 60%;
  margin: 0 auto;
}

.fadein {
  opacity: 0;
  transition: all 1s;
  transform: translateY(0px);
}

.l-inner::after,
.l-inner-s::after,
.l-inner-m::after,
.l-inner-l::after {
  content: "";
  display: table;
  clear: both;
}

.l-inner,
.l-inner-s,
.l-inner-m,
.l-inner-l {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

.l-inner {
  padding-bottom: 40px;
  max-width: 1100px;
}

/*-------------------
top
--------------------*/
#top .language {
  position: absolute;
  top: 10px;
  right: 1%;
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  width: 350px;
}

#top .language li {
  width: 32%;
}

#top .language li span,
#top .language li a {
  display: block;
  padding: 6px 0px;
  text-align: center;
  border-radius: 15px;
}

#top .language li span {
  background: #fff;
  border: 1px solid #a6a09a;
}

#top .language li a {
  background: #a6a09a;
  color: #fff;
  border: 1px solid #a6a09a;
}

#top .language li a:hover {
  background: #fff;
  border: 1px solid #a6a09a;
  color: #847e79;
}

#top {
  position: relative;
  z-index: 10;
  padding-top: 50px;
  padding-bottom: 300px;
  background: linear-gradient(
    180deg,
    #eee8e3 0%,
    #eee8e3 50%,
    #fff 50%,
    #fff 100%
  );
}

#top h2.title {
  margin: 0 auto 15px;
  padding-top: 15px;
  text-align: center;
}

#top h2.title img {
  height: 70px;
}

.main_img {
  position: relative;
}

.main_img:before {
  position: absolute;
  top: 25%;
  left: 11%;
  padding: 111px 8px;
  background-image: url(../images/main/img-text01.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

.main_img:after {
  position: absolute;
  top: 25%;
  right: 11%;
  padding: 111px 8px;
  background-image: url(../images/main/img-text02.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

#main-text {
  position: absolute;
  right: 22%;
  bottom: 6%;
  font-size: 20px;
  text-align: left;
}

#main-text p.main-catch {
  margin-bottom: 10px;
  font-size: 120%;
  letter-spacing: 2px;
}

.top_logo {
  position: absolute;
  z-index: 10;
  bottom: 2%;
  left: 19%;
  width: 28%;
}

#contbox {
  margin: 0 auto;
  text-align: center;
}

/*-----------------------
solo_menu
-------------------------*/
.solo_menu {
  max-width: 1000px;
  width: 100%;
  margin: 50px auto 0;
}

.solo_menu div {
  text-align: center;
  margin-bottom: 50px;
}

.solo_menu ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 50px auto 150px;
}

.solo_menu ul li {
  border-right: 1px solid #d0c39e;
  width: 25%;
  box-sizing: border-box;
  text-align: center;
  padding: 10px 0;
}

.solo_menu ul li:last-child {
  border-right: none;
}

.solo_menu ul li img {
  height: 80px;
}

.solo_menu .digital_catalog {
  max-width: 800px;
  margin: 60px auto;
}

.solo_menu .digital_catalog img {
  border-radius: 30px;
}

/*-----------------------
slideshow
-------------------------*/
#slideshow {
  width: 100%;
  /* 画像の横幅に合わせて記述 */
  height: 0;
  /* 画像の高さに合わせて記述 */
  margin: 0 auto;
  padding-top: 57%;
}

#slideshow img {
  position: absolute;
  z-index: 7;
  top: 0;
  right: 0;
  left: 0;
  width: 55%;
  margin: 0 auto;
  opacity: 0;
}

#slideshow img.active {
  z-index: 9;
  opacity: 1;
}

#slideshow img.last-active {
  z-index: 8;
}

/*-------------------------------------------------------
images
-------------------------------------------------------*/
img {
  max-width: 100%;
  width/***/
	: auto;
  height: auto;
  vertical-align: bottom;
}

#contbox {
  font-size: 16px;
}

/*-----------------------
movie
-----------------------*/
#movie {
  padding: 50px 0 80px;
  background: linear-gradient(
    180deg,
    #eee8e3 0%,
    #eee8e3 60%,
    #fff 60%,
    #fff 100%
  );
}

.video {
  position: relative;
  width: 61vw;
  height: 55vw;
  margin: 0 auto;
}

.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/*-----------------------
gallery
-----------------------*/
#gallery {
  padding: 50px 0;
}

.photo {
  width: 80%;
  margin: 0 auto;
}

.photo ul {
  width: 46%;
  margin: 0 2%;
}

ul.photo-left {
  float: left;
}

ul.photo-left li {
  margin: 10% auto;
}

ul.photo-right {
  float: right;
}

ul.photo-right li {
  margin: 15% auto;
}

ul.photo-left :nth-of-type(2) {
  text-align: right;
}

ul.photo-left :nth-of-type(2) img {
  width: 80%;
}

ul.photo-right li:nth-of-type(1) {
  margin: 30% auto 15%;
}

ul.photo-right li:nth-of-type(1),
ul.photo-right li:nth-of-type(3),
ul.photo-right li:nth-of-type(5) {
  width: 90%;
}

ul.photo-right li:nth-of-type(4) {
  width: 80%;
  margin: 15%;
}

/*---------------------
point
---------------------*/
#point {
  margin: 0 auto;
  padding: 50px 0 100px;
  background: #eee8e3;
}

li.solo-point_list__item {
  display: inline-block;
  width: 25%;
  margin: 0 1%;
  vertical-align: top;
}

li.solo-point_list__item h4 {
  width: 26%;
  margin: 20px 0 10px;
}

li.solo-point_list__item p {
  text-align: left;
}

li.solo-point_list__item .point-img img {
  border: 1px solid #a6a09a;
}

.point-title {
  margin: 20px auto;
}

li.solo-point_list__item .point-title p {
  display: inline;
  background: linear-gradient(transparent 0%, #fff 0%);
  font-size: 20px;
  line-height: 1.7;
}

li.solo-point_list__item:nth-of-type(4),
li.solo-point_list__item:nth-of-type(5) {
  margin-top: 25px;
}

ul.reserv-list li {
  display: inline-block;
  margin: 0 20px;
}

.contact a {
  display: block;
  margin: 30px auto;
  padding: 15px 20px;
  border: 1px solid #a6a09a;
  background: #fff;
  box-shadow: 4px 5px 0 #a6a09a;
  color: #847e79;
}

.contact a:hover {
  box-shadow: none;
  transform: translateY(4px);
}

.reserve a {
  display: block;
  margin: 30px auto;
  padding: 15px 20px 20px;
  background: #a6a09a;
  box-shadow: 4px 5px 0 #fff, 5px 6px 0 0 #a6a09a, 5px 4px 0 0 #a6a09a,
    3px 6px 0 0 #a6a09a;
  color: #fff;
}

.reserve a:hover {
  box-shadow: none;
  transform: translateY(4px);
}

/*--------------------
campaign02
---------------------*/
.campaign02 {
  margin: 0 auto 80px;
}

/*--------------------
plan
---------------------*/
#plan {
  margin: 0 auto;
  background: #e3c8c7;
  font-size: 130%;
  color: #222;
  padding: 0 0 100px;
}

#plan .title-box {
  padding: 10% 0;
  background-image: url(../images/bg-plan.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

#plan p {
  line-height: 1.1;
}

#plan .bnr_campaign {
  margin: 30px auto 0;
  max-width: 800px;
}

#plan .bnr_campaign img {
  border-radius: 30px;
}

#plan .digital_catalog img {
  border-radius: 30px;
}

#plan .digital_catalog {
  margin: 60px auto 0;
  max-width: 800px;
}

/* プラン共通部分 */
#plan .plan_style h2 {
  display: table;
  margin: 0 auto;
  padding: 10px 0 5px 90px;
}

#plan .plan_style h2 span:last-child {
  font-size: 150%;
}

#plan .plan_style h2 span:first-child {
  display: block;
  font-size: 80%;
}

#plan .plan_style .point {
  margin: 40px auto 0;
}

#plan .plan_style .point p {
  display: inline-block;
  margin: 0 10px;
  padding: 8px 0;
  width: 330px;
  border-radius: 30px;
  color: #fff;
}

#plan .plan_style .plan_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 60px auto 0;
}

#plan .plan_style .plan_box > div:not(.sp_only) {
  margin: 0 2.5%;
  padding: 50px 2%;
  width: 28%;
  border-radius: 90px;
  background: #fff;
  box-shadow: 0 10px 30px -2px rgba(0, 0, 0, 0.2);
  max-width: 460px;
  position: relative;
}

#plan .plan_style .comment {
  position: absolute;
  top: -22px;
  left: 0;
  right: 0;
  background: #aa994f;
  color: #fff;
  margin: 0 auto;
  height: 42px;
  line-height: 37px;
  width: 90%;
  border-radius: 30px;
}

#plan .plan_style .comment:before {
  position: absolute;
  top: 100%;
  left: 50%;
  content: "";
  margin: -2px auto 0;
  transform: translateX(-50%);
  border: solid 16px transparent;
  border-top: solid 20px #aa994f;
}

#plan .plan_style .comment span {
  font-size: 130%;
}

#plan .plan_style .title {
  display: grid;
  margin: 0 auto;
  grid-template-columns: 38% 1fr;
}

#plan .plan_style .title h3 {
  margin: 0 auto 10px;
  font-size: 130%;
  grid-column: 1 / 3;
  grid-row: 1 / 2;
}

#plan .plan_style .title img {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}

#plan .plan_style .title table {
  margin: 8px auto 0;
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}

#plan .plan_style .title td {
  vertical-align: bottom;
  line-height: 1;
}

#plan .plan_style .title td.price {
  font-family: oswald, sans-serif;
  font-size: 250%;
}

#plan .plan_style .title td.bold {
  font-size: 170%;
  letter-spacing: 0;
}

#plan .plan_style .title td.bold span {
  display: block;
  font-size: 30%;
}

#plan .plan_style .time_bg {
  display: flex;
  justify-content: center;
  margin: 37px auto 44px;
}

#plan .plan_style .time_bg li {
  margin: 0 0 0 15px;
  padding: 0 0 0 36px;
  font-size: 80%;
  color: #6c7faf;
}

#halfday .time_bg li:nth-of-type(1) {
  background: url(../images/plan/halfday/icon_time.png) left center / contain
    no-repeat;
}
#halfday .time_bg li:nth-of-type(2) {
  background: url(../images/plan/halfday/icon_camera.png) left center / contain
    no-repeat;
}

#campaign .time_bg li:nth-of-type(1) {
  background: url(../images/plan/campaign/icon_time.png) left center / contain
    no-repeat;
}
#campaign .time_bg li:nth-of-type(2) {
  background: url(../images/plan/campaign/icon_camera.png) left center / contain
    no-repeat;
}
#data_album .time_bg li:nth-of-type(1) {
  background: url(../images/plan/data_album/icon_time.png) left center / contain
    no-repeat;
}

#data_album .time_bg li:nth-of-type(2) {
  background: url(../images/plan/data_album/icon_camera.png) left center /
    contain no-repeat;
}
#girls .time_bg li:nth-of-type(1) {
  background: url(../images/plan/icon_time.png) left center / contain no-repeat;
}
#girls .time_bg li:nth-of-type(2) {
  background: url(../images/plan/icon_camera.png) left center / contain
    no-repeat;
}

#plan .plan_style .time_bg li:first-child {
  margin: 0;
}

#plan .plan_style .contents {
  margin: 20px 0 0;
}

#plan .plan_style .contents div {
  display: flex;
  align-items: center;
  margin: 10px auto 0;
  padding: 12px 8px 12px 90px;
  width: 100%;
  min-height: 75px;
  border-radius: 20px;
  font-size: 80%;
  text-align: left;
  line-height: 1.1;
}

#plan .plan_style .contents .free {
  position: relative;
  padding: 12px 25px 12px 90px;
}

#plan .plan_style .contents .free:before {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  border-radius: 0 20px 0 0;
  background: url(../images/plan/icon_free.png) right top / contain no-repeat;
  content: "";
}

#plan .plan_style .contents div p span {
  font-size: 80%;
}

#plan .plan_style .class_up {
  display: flex;
  flex-wrap: wrap;
  margin: 20px auto 0;
  width: 100%;
  border-radius: 10px;
  color: #5f5758;
  font-size: 75%;
}

#plan .plan_style .class_up > p {
  margin: 0 auto 10px;
  width: 100%;
}

#plan .plan_style .class_up div {
  width: 50%;
  border-top: 3px solid #b9a7a7;
  border-right: 3px solid #b9a7a7;
  border-bottom: 3px solid #b9a7a7;
  letter-spacing: normal;
}

#plan .plan_style .class_up div:nth-of-type(1) {
  border-left: 3px solid #b9a7a7;
  border-radius: 10px 0 0 10px;
}

#plan .plan_style .class_up div:nth-of-type(2) {
  border-radius: 0 10px 10px 0;
}

#plan .plan_style .class_up div > p:nth-of-type(1) {
  padding: 4px 0;
  border-bottom: 3px solid #b9a7a7;
  font-size: 80%;
}

#plan .plan_style .class_up div > p:nth-of-type(1):first-letter {
  font-size: 120%;
}

#plan .plan_style .class_up div > span {
  display: block;
  margin: 5px 0 0;
  font-family: oswald, sans-serif;
  font-size: 130%;
}

#plan .plan_style .class_up div > span span {
  font-size: 70%;
}

#plan .plan_style .class_up div table {
  margin: 5px auto 14px;
}

#plan .plan_style .class_up div td {
  vertical-align: bottom;
  line-height: 1;
}

#plan .plan_style .class_up div td.price {
  font-family: oswald, sans-serif;
  font-size: 190%;
}

#plan .plan_style .class_up div td.bold {
  font-size: 125%;
  letter-spacing: 0;
}

#plan .plan_style .class_up div td.bold span {
  display: block;
  font-size: 40%;
}

#plan .plan_style .sub_text {
  margin: 25px 4% 0;
  color: #818181;
  font-size: 70%;
}

#plan .plan_style .sub_text02 {
  margin: 5px 4% -15px;
  color: #818181;
  font-size: 75%;
}

#plan .plan_style .plan_attention {
  margin: 40px auto 0;
  color: #818181;
  font-size: 80%;
}

#plan .plan_style .retouch_price {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 70px auto 0;
  color: #af5978;
}

#plan .plan_style .retouch_price dt {
  margin-bottom: 8px;
}

#plan .plan_style .retouch_price dd {
  margin: 0;
}

/*--- キャンペーンプラン ---*/
#plan #campaign {
  background: #fff;
  margin: 100px auto 0;
  border-radius: 200px 0 0 200px;
  padding: 60px 0px;
}

#plan #campaign.plan_style h2 {
  background: url(../images/plan/campaign/plan_number.png) left center / contain
    no-repeat;
}

#plan #campaign.plan_style .point p {
  background: #c67f99;
}

#plan #campaign.plan_style .limited .title,
#plan #campaign.plan_style .yousou .title {
  width: 85%;
  grid-template-columns: 4vw 1fr;
}

#plan #campaign.plan_style .title table {
  grid-column: 1 / 3;
  position: relative;
}

#plan #campaign.plan_style .limited .title table:before,
#plan #campaign.plan_style .limited .title table:after {
  display: block;
  position: absolute;
  width: 19px;
  height: 25px;
  content: "";
}

#plan #campaign.plan_style .limited .title table:before {
  top: 0;
  left: -16%;
  background: url(../images/plan/campaign/kirakira_left.png) center center /
    contain no-repeat;
}

#plan #campaign.plan_style .limited .title table:after {
  bottom: 0;
  right: -18%;
  background: url(../images/plan/campaign/kirakira_right.png) center center /
    contain no-repeat;
}

#plan #campaign.plan_style .title h3 span {
  display: block;
  color: #c9829c;
  font-size: 80%;
}

#plan #campaign.plan_style .contents div {
  color: #af5978;
}

#plan #campaign.plan_style .contents .attention {
  background: #c67f99;
  color: #fff;
  padding: 12px 20px;
  font-size: 70%;
}

#plan #campaign.plan_style .contents .attention p {
  line-height: normal;
}

#plan #campaign.plan_style .contents .attention span {
  font-size: 120%;
  display: block;
  margin: 0 auto 8px;
  text-align: center;
}

#plan #campaign.plan_style .contents div:nth-of-type(2),
#plan #campaign.plan_style .yousou .contents div:nth-of-type(1) {
  background: #f9e8ee url(../images/plan/campaign/icon_dress.png) 15px center /
    auto 58px no-repeat;
}

#plan #campaign.plan_style .contents div:nth-of-type(3),
#plan #campaign.plan_style .yousou .contents div:nth-of-type(2) {
  background: #fef5f8 url(../images/plan/campaign/icon_hairmake.png) 15px center /
    auto 58px no-repeat;
}

#plan #campaign.plan_style .contents div:nth-of-type(4),
#plan #campaign.plan_style .yousou .contents div:nth-of-type(3) {
  background: #f9e8ee url(../images/plan/campaign/icon_data.png) 15px center /
    auto 58px no-repeat;
}

#plan #campaign.plan_style .contents div:nth-of-type(5),
#plan #campaign.plan_style .yousou .contents div:nth-of-type(4) {
  background: #fef5f8 url(../images/plan/campaign/icon_accessories.png) 15px
    center / auto 58px no-repeat;
}

#plan #campaign.plan_style .wasou .contents div:nth-of-type(1) {
  background: #f9e8ee url(../images/plan/campaign/icon_wasou.png) 15px center /
    auto 58px no-repeat;
}

#plan #campaign.plan_style .class_up .color {
  color: #c9829c;
}

/*--- データ＆アルバムプラン ---*/
#plan #data_album {
  background: #fff;
  margin: 100px auto 0;
  border-radius: 200px 0 0 200px;
  padding: 60px 0px;
}

#plan #data_album.plan_style h2 {
  background: url(../images/plan/data_album/plan_number.png) left center /
    contain no-repeat;
}

#plan #data_album.plan_style .point p {
  width: 420px;
  background: #6c7faf;
}

#plan #data_album .plan_style .title {
  width: 85%;
}

#plan #data_album.plan_style .title table {
  margin: auto;
}

#plan #data_album.plan_style .contents div {
  color: #4d6194;
}

#plan #data_album.plan_style .contents div:nth-of-type(1) {
  background: #e0e6f6 url(../images/plan/data_album/icon_dress.png) 15px center /
    auto 58px no-repeat;
}

#plan #data_album.plan_style .contents div:nth-of-type(2) {
  background: #eff3fd url(../images/plan/data_album/icon_hairmake.png) 15px
    center / auto 58px no-repeat;
}

#plan #data_album.plan_style .contents div:nth-of-type(3) {
  background: #e0e6f6 url(../images/plan/data_album/icon_data.png) 15px center /
    auto 58px no-repeat;
}

#plan #data_album.plan_style .contents div:nth-of-type(4) {
  background: #eff3fd url(../images/plan/data_album/icon_retouch.png) 15px
    center / auto 58px no-repeat;
}

#plan #data_album.plan_style .contents div:nth-of-type(5) {
  background: #e0e6f6 url(../images/plan/data_album/icon_album.png) 15px center /
    auto 58px no-repeat;
}

#plan #data_album.plan_style .contents div:nth-of-type(6) {
  background: #eff3fd url(../images/plan/data_album/icon_accessories.png) 15px
    center / auto 58px no-repeat;
}

/*--- ハーフデイ ---*/

#plan #halfday {
  background: #fff;
  margin: 100px auto 0;
  border-radius: 200px 0 0 200px;
  padding: 60px 0px;
}

#plan #halfday.plan_style h2 {
  background: url(../images/plan/halfday/plan_number.png) left center / contain
    no-repeat;
}

#plan #halfday.plan_style .point p {
  width: 420px;
  background: #af9d50;
}

#plan #halfday .plan_style .title {
  width: 85%;
}

#plan #halfday.plan_style .title table {
  margin: auto;
}

#plan #halfday.plan_style .contents div {
  color: #beb796;
}

/*ひとりプラン*/
#plan #halfday.plan_style .contents div:nth-of-type(1) {
  background: #e3dfcb url(../images/plan/halfday/icon_dress.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents div:nth-of-type(2) {
  background: #f5f3e6 url(../images/plan/halfday/icon_hairmake.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents div:nth-of-type(3) {
  background: #e3dfcb url(../images/plan/halfday/icon_accessories.png) 15px
    center / auto 58px no-repeat;
}

#plan #halfday.plan_style .contents div:nth-of-type(4) {
  background: #f5f3e6 url(../images/plan/halfday/icon_album.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents div:nth-of-type(5) {
  background: #e3dfcb url(../images/plan/halfday/icon_data.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents div:nth-of-type(6) {
  background: #f5f3e6 url(../images/plan/halfday/icon_premierretouch.png) 15px
    center / auto 58px no-repeat;
}

#plan #halfday.plan_style .contents div:nth-of-type(7) {
  background: #e3dfcb url(../images/plan/halfday/icon_inner.png) 25px center /
    auto 58px no-repeat;
}
#plan #halfday.plan_style .contents div:nth-of-type(8) {
  background: #f5f3e6 url(../images/plan/halfday/icon_holiday.png) 15px center /
    auto 58px no-repeat;
}
#plan #halfday.plan_style .contents div:nth-of-type(9) {
  background: #e3dfcb url(../images/plan/halfday/icon_track.png) 15px center /
    auto 58px no-repeat;
}

/*ふたりプラン*/
#plan #halfday.plan_style .contents.futari div:nth-of-type(1) {
  background: #e3dfcb url(../images/plan/halfday/icon_dress.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(2) {
  background: #f5f3e6 url(../images/plan/halfday/icon_hairmake.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(3) {
  background: #e3dfcb url(../images/plan/halfday/icon_accessories.png) 15px
    center / auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(4) {
  background: #f5f3e6 url(../images/plan/halfday/icon_album_w.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(5) {
  background: #e3dfcb url(../images/plan/halfday/icon_data.png) 15px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(6) {
  background: #f5f3e6 url(../images/plan/halfday/icon_premierretouch.png) 15px
    center / auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(7) {
  background: #e3dfcb url(../images/plan/halfday/icon_inner.png) 25px center /
    auto 58px no-repeat;
}

#plan #halfday.plan_style .contents.futari div:nth-of-type(8) {
  background: #f5f3e6 url(../images/plan/halfday/icon_futari.png) 5px center /
    auto 58px no-repeat;
}
#plan #halfday.plan_style .contents.futari div:nth-of-type(9) {
  background: #e3dfcb url(../images/plan/halfday/icon_holiday.png) 15px center /
    auto 58px no-repeat;
}
#plan #halfday.plan_style .contents.futari div:nth-of-type(10) {
  background: #f5f3e6 url(../images/plan/halfday/icon_track.png) 15px center /
    auto 58px no-repeat;
}
/*--------------------
link-album
---------------------*/
#link-album {
  min-width: 1280px;
  margin: 0 auto 30px;
}

#link-album .album-outer_box {
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  padding: 30px;
}

#link-album .image-area {
  width: 60%;
  margin-right: 20px;
}

#link-album .text-area {
  width: 37%;
}

#link-album .text-area p {
  color: #847e79;
  font-size: 14px;
  font-style: normal;
  line-height: 3;
  letter-spacing: 2px;
}

#link-album .text-area h3 {
  width: 400px;
  margin: 20px auto 40px;
}

#link-album .aimme-text {
  width: 244px;
  margin: 60px auto 0;
}

#link-album .link-area {
  padding: 15px 30px 15px 0;
  background: #c3bbb4;
  text-align: right;
}

#link-album .link-area img {
  width: 500px;
}

/*--------------------
complex
---------------------*/
#complex {
  margin: 0 auto;
  padding: 50px 0 80px;
  background: #eee8e3;
}

p.contents-info {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  padding: 10px;
  background-color: #a6a09a;
  color: #fff;
}

.contents-info:before {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 9px solid transparent;
  border-top: 15px solid #a6a09a;
  content: "";
}

h3.comp-title {
  margin: 30px auto;
  font-size: 30px;
}

#complex .retouch_box {
  margin: 0 auto;
  width: 80%;
}

#complex .retouch_box h4 {
  margin: 50px auto 0;
  text-align: left;
}

#complex .retouch_box h4 span {
  font-family: Sharoa Pro DemiBold;
  font-size: 270%;
  text-align: left;
  vertical-align: sub;
  letter-spacing: 0.2em;
}

#complex .retouch_box .photo_box,
#complex .retouch_box .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#complex .retouch_box .inner {
  margin: 60px auto 0;
  width: 47%;
}

#complex .retouch_box .inner div {
  margin: 25px 0 0;
  width: 48%;
}

#complex .retouch_box .inner > p {
  width: 100%;
  font-size: 110%;
}

#complex .retouch_box .inner div img {
  width: 100%;
}

#complex .retouch_box .inner div p {
  font-size: 120%;
  padding: 20px;
  font-family: Sharoa Pro DemiBold;
  font-style: italic;
  background: #fff;
}

#complex .retouch_box .inner div:last-child p {
  background: #c1bfb8;
  color: #fff;
}

/*--------------------
dress
---------------------*/
#dress {
  margin: 0 auto;
  padding: 50px 0;
}

p.explanatory {
  margin: 30px auto 50px;
}

#dress .modal_list {
  display: flex;
  flex-wrap: wrap;
  margin: 100px 0 0 -0.5%;
}

#dress .modal_list > div {
  margin: 10px 0 0 0.5%;
  width: 19.5%;
}

#dress .modal_list > div img {
  width: 100%;
}

#dress .modal_list a {
  display: block;
  position: relative;
}

#dress .modal_list a:before {
  display: block;
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 50px;
  height: 50px;
  background: url(../images/dress/icon_arrow.png) center center / contain
    no-repeat;
  content: "";
}

#dress .digital_catalog {
  margin: 50px auto 0;
}

/*----------------------------
#js_modal
----------------------------*/
#js_modal .modal_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0 auto;
  max-width: 500px;
  width: 100%;
  transform: translateY(-50%) translateX(-50%);
}

#js_modal .switch_box {
  margin: 20px auto 0;
  text-align: center;
}

#js_modal .switch {
  display: inline-block;
  margin: 0 5px;
  min-width: 130px;
  height: 40px;
  background: #c1a557;
  color: #fff;
  font-size: 90%;
  line-height: 40px;
  cursor: pointer;
}

#js_modal .switch.active {
  opacity: 0.3;
  cursor: default;
}

/*---------------------
media
---------------------*/
#media {
  margin: 0 auto;
  padding-bottom: 50px;
  background-color: #eee8e3;
}

#media .title-box {
  padding: 10% 0;
  background-image: url(../images/bg-media.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.media-list_outer {
  margin: 60px auto 0;
}

ul.media-list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  width: 74%;
  margin: 30px auto 0;
}

li.media-list_item {
  width: 31.33%;
  margin: 20px 1% 30px;
  position: relative;
  padding: 0 0 100px;
}

li.media-list_item h4 {
  width: 26%;
  margin: 20px 0 10px 20px;
}

li.media-list_item p {
  text-align: left;
}

.media-title {
  margin: 20px auto;
}

li.media-list_item .media-title p {
  display: inline;
  background: linear-gradient(transparent 0%, #fff 0%);
  font-size: 20px;
  line-height: 1.7;
}

#media .seemore {
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}

/*---------------------
why
---------------------*/
#why {
  margin: 0 auto;
  padding-bottom: 50px;
}

#why .title-box {
  padding: 10% 0;
  background-image: url(../images/bg-why.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

#why h3.title img {
  height: 85px;
}

.why-box {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  width: 49%;
  margin: 0 auto;
}

.why-box > div {
  width: 36%;
  margin: 2% 7%;
}

#why h4 {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 25px auto;
  padding: 10px;
  background-color: #a6a09a;
  color: #fff;
}

#why h4:before {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 9px solid transparent;
  border-top: 15px solid #a6a09a;
  content: "";
}

.why-box p {
  margin: 20px auto;
  text-align: left;
}

#why h3.title-voice img {
  height: 65px;
}

#why h3.title-voice {
  margin: 30px auto;
}

p.voice-info {
  font-size: 30px;
}

ul.voice-list {
  display: flex;
  display: -webkit-flex;
  width: 78%;
  margin: 30px auto;
}

ul.voice-list li {
  width: 30%;
  margin: 0 3%;
  padding: 40px 20px 20px;
  background-image: url(../images/why/bg-voice.jpg);
}

p.voice-title {
  position: relative;
  margin-bottom: 20px;
  padding: 34px 0;
  border-bottom: 2px solid;
  font-size: 19px;
}

ul.voice-list li:nth-of-type(1) p.voice-title.title01 {
  padding: 20px 0;
}

p.voice-title.title01:after {
  position: absolute;
  top: -18px;
  right: 0;
  left: 0;
  width: 47px;
  height: 38px;
  margin: 0 auto;
  background-image: url(../images/why/voice-1.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

p.voice-title.title02:after {
  position: absolute;
  top: -18px;
  right: 0;
  left: 0;
  width: 47px;
  height: 38px;
  margin: 0 auto;
  background-image: url(../images/why/voice-2.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

p.voice-title.title03:after {
  position: absolute;
  top: -18px;
  right: 0;
  left: 0;
  width: 47px;
  height: 38px;
  margin: 0 auto;
  background-image: url(../images/why/voice-3.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
}

/* ----- interview ----- */
.interview {
  margin: 50px auto 0;
  padding: 0 0 100px;
}

.interview > p {
  font-size: 20px;
}

.interview h3 {
  margin: 0 auto 40px;
}

.interview h3 img {
  height: 65px;
}

.interview h4::before {
  display: none;
}

.interview h4 {
  width: 26%;
  margin: 0 0 10px 0;
  padding: 0;
  background: none;
}

.interview .list {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content: center;
  width: 74%;
  margin: 0 auto;
}

.interview .list > div {
  position: relative;
  width: 29.33%;
  margin: 60px 2% 0;
  padding: 0 0 80px;
}

.interview .list > div > div {
  margin: 0 auto 20px;
}

.interview .list > div p {
  display: inline;
  background: linear-gradient(transparent 0%, #fff 0%);
  font-size: 20px;
  line-height: 1.7;
}

.interview .seemore {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .sp_only {
    display: none !important;
  }
}

/*------------------------
sp
-------------------------*/
@media screen and (max-width: 767px) {
  #l-wrapper {
    min-width: 0;
    padding-top: 0;
  }

  body {
    margin: 0 auto;
    font-size: 14px;
  }

  .m-mt-l {
    margin-top: 20px;
  }

  .sp_left {
    float: left;
  }

  .sp_right {
    float: right;
  }

  li {
    list-style: none;
  }

  .seemore {
    margin: 20px auto 35px;
  }

  .pc_only {
    display: none !important;
  }

  #contbox {
    font-size: 14px;
  }

  /*-----------------------
top
------------------------*/
  #top .language {
    width: 240px;
  }

  #top {
    padding: 80px 0 95%;
  }

  #top h2.title img {
    height: 9vh;
  }

  .main_img:before {
    top: 30%;
    left: 2.5%;
    padding: 17% 1%;
  }

  .main_img:after {
    top: 30%;
    right: 2.5%;
    padding: 17% 1%;
  }

  .top_logo {
    bottom: -57%;
    left: 3%;
    width: 50%;
  }

  #main-text {
    right: 1%;
    bottom: 9%;
    font-size: 14px;
  }

  h3.title img {
    height: 8vh;
  }

  /*-----------------------
    solo_menu
    -------------------------*/
  .solo_menu {
    margin: 0 auto 0;
  }

  .solo_menu .menu_img {
    height: 15px;
  }

  .solo_menu ul {
    margin: 30px auto 60px;
  }

  .solo_menu ul li img {
    height: 45px;
  }

  .solo_menu .digital_catalog {
    margin: 0 auto 0;
    padding: 0 0 50px 0;
    width: 90%;
  }
  .solo_menu .digital_catalog img {
    border-radius: 20px;
  }

  /*-----------------------
slideshow
-------------------------*/
  #slideshow {
  }

  #slideshow img {
    width: 85%;
  }

  /*-------------------------------------------------------
images
-------------------------------------------------------*/
  img {
    max-width: 100%;
    width/***/
		: auto;
    height: auto;
    vertical-align: bottom;
  }

  /*-----------------------
movie
-----------------------*/
  #movie {
    padding: 1px 0 30px;
  }

  .video {
    width: 85vw;
    height: 77vw;
  }

  /*--------------------
photo-gallery
---------------------*/
  #gallery {
    padding: 5%;
  }

  .photo {
    width: 100%;
  }

  .photo ul {
    width: 48%;
  }

  .photo ul.photo-left {
    margin: 0 2% 0 0;
  }

  .photo ul.photo-right {
    margin: 0 0 0 2%;
  }

  ul.photo-right li:nth-of-type(1),
  ul.photo-right li:nth-of-type(3),
  ul.photo-right li:nth-of-type(5) {
    width: 100%;
    text-align: right;
  }

  ul.photo-right li:nth-of-type(1) img,
  ul.photo-right li:nth-of-type(3) img,
  ul.photo-right li:nth-of-type(5) img {
    width: 90%;
  }

  ul.photo-right li:nth-of-type(4) {
    width: 80%;
    margin: 0 auto;
    text-align: left;
  }

  /*---------------------
point
---------------------*/
  #point {
    margin: 0 auto;
    padding: 1px 0 30px;
  }

  ul.solo-point_list {
    width: 90%;
    margin: 0 auto;
  }

  li.solo-point_list__item {
    display: block;
    width: 95%;
    margin: 0 auto 30px;
  }

  li.solo-point_list__item:nth-of-type(4),
  li.solo-point_list__item:nth-of-type(5) {
    margin-top: 0;
  }

  li.solo-point_list__item .point-title p {
    font-size: 19px;
    line-height: 1.4;
  }

  ul.reserv-list {
    margin: 0 auto 40px;
    padding: 30px 0 0;
  }

  .contact a {
    margin: 0 auto;
  }

  .reserve a {
    margin: 20px auto 0;
  }

  /*--------------------
plan
---------------------*/
  #plan {
    margin: 0 auto;
    font-size: 100%;
    padding: 0 0 50px;
  }

  #plan .title-box {
    background-position-x: 46%;
  }

  #plan .bnr_campaign {
    margin: 20px auto 0;
    width: 90%;
  }

  #plan .digital_catalog {
    margin: 50px auto 0;
    width: 90%;
  }

  #js_modal .modal_inner.retouch {
    width: 90%;
  }

  /* プラン共通部分 */
  #plan .plan_style h2 {
    padding: 10px 35px 5px;
  }

  #plan .plan_style h2 span:first-child {
    font-size: 110%;
  }

  #plan .plan_style h2 span:last-child {
    font-size: 190%;
  }

  #plan .plan_style .point {
    margin: 20px auto 0;
  }

  #plan .plan_style .point p {
    margin: 10px 0 0;
    width: 80%;
    font-size: 120%;
  }

  #plan .plan_style .select {
    display: flex;
    width: 100%;
  }

  #plan .plan_style .select div {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 24px 0;
    width: 50%;
    background: #d5d3cd;
    color: #fff;
    font-size: 130%;
    border-right: 2px solid #fff;
  }

  #plan .plan_style .select div:first-child {
    border-radius: 50px 0 0 0;
  }

  #plan .plan_style .select div:last-child {
    border-radius: 0 50px 0 0;
    border-right: none;
  }

  #plan .plan_style .select div.active {
    background: #fff;
    color: #c0beb6;
  }

  #plan .plan_style .plan_box {
    width: 90%;
    margin: 30px auto 0;
  }

  #plan .plan_style .plan_box > div:not(.sp_only) {
    width: 100%;
    padding: 35px 5% 25px;
    border-radius: 50px;
    box-shadow: 0 0 15px -2px rgba(0, 0, 0, 0.2);
  }

  #plan .plan_style .title {
    align-items: end;
    grid-template-columns: 26vw 1fr;
  }

  #plan .plan_style .title h3 {
    margin: 0 auto;
    font-size: 160%;
    grid-column: 2 / 3;
  }

  #plan .plan_style .title img {
    grid-row: 1 / 3;
  }

  #plan .plan_style .title td.price {
    font-size: 320%;
  }

  #plan .plan_style .title td.bold {
    font-size: 200%;
  }

  #plan .plan_style .title td.bold span {
    display: block;
  }

  #plan .plan_style .time_bg li {
    font-size: 110%;
  }

  #plan .plan_style .comment {
    font-size: 120%;
    height: 37px;
    line-height: 32px;
    width: 85%;
  }

  #plan .plan_style .contents {
    margin: 20px 0 0;
  }

  #plan .plan_style .contents div {
    padding: 14px 8px 12px 60px;
    min-height: 56px;
    border-radius: 15px;
    font-size: 100%;
  }

  #plan .plan_style .contents .free {
    padding: 14px 20px 12px 60px;
  }

  #plan .plan_style .contents .free:before {
    width: 45px;
    height: 45px;
    border-radius: 0 15px 0 0;
  }

  #plan .plan_style .class_up {
    font-size: 100%;
  }

  #plan .plan_style .sub_text {
    margin: 25px auto 0;
    font-size: 90%;
    width: 80%;
  }

  #plan .plan_style .sub_text02 {
    font-size: 90%;
  }

  #plan .plan_style .retouch_price {
    margin: 30px auto 0;
    width: 90%;
    text-align: center;
  }

  #plan .plan_style .retouch_price dt {
    margin-bottom: 6px;
  }

  #plan .plan_style .retouch_price dd {
    margin: 0;
    text-align: center;
  }

  #plan .plan_style .plan_attention {
    margin: 30px 2.5% 0;
    font-size: 90%;
  }

  /* キャンペーンプラン */
  #plan #campaign {
    margin: 50px auto 0;
    border-radius: 50px 0 0 50px;
    padding: 30px 0px 40px;
  }

  #plan #campaign.plan_style h2 {
    padding: 10px 0 5px 35px;
  }

  #plan #campaign.plan_style .plan_box {
    margin: 50px auto 0;
  }

  #plan #campaign.plan_style .plan_box .yousou {
    margin: 70px auto 0;
  }

  #plan #campaign.plan_style .contents .attention {
    font-size: 90%;
  }

  #plan #campaign.plan_style .contents div:nth-of-type(2),
  #plan #campaign.plan_style .yousou .contents div:nth-of-type(1) {
    background: #f9e8ee url(../images/plan/campaign/icon_dress.png) 10px center /
      auto 40px no-repeat;
  }
  #plan #campaign.plan_style .wasou .contents div:nth-of-type(1) {
    background: #f9e8ee url(../images/plan/campaign/icon_wasou.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #campaign.plan_style .contents div:nth-of-type(3),
  #plan #campaign.plan_style .yousou .contents div:nth-of-type(2) {
    background: #fef5f8 url(../images/plan/campaign/icon_hairmake.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #campaign.plan_style .contents div:nth-of-type(4),
  #plan #campaign.plan_style .yousou .contents div:nth-of-type(3) {
    background: #f9e8ee url(../images/plan/campaign/icon_data.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #campaign.plan_style .contents div:nth-of-type(5),
  #plan #campaign.plan_style .yousou .contents div:nth-of-type(4) {
    background: #fef5f8 url(../images/plan/campaign/icon_accessories.png) 10px
      center / auto 40px no-repeat;
  }

  /* データ＆アルバムプラン */
  #plan #data_album {
    margin: 50px auto 0;
    border-radius: 50px 0 0 50px;
    padding: 30px 0px 40px;
  }

  #plan #data_album.plan_style h2 {
    padding: 10px 5px 5px;
  }

  #plan #data_album.plan_style .point p {
    width: 80%;
  }

  #plan #data_album.plan_style .plan_box {
    margin: 35px auto 0;
    padding: 0;
    width: 90%;
    border-radius: 50px;
    background: #fff;
    box-shadow: 0 0 15px -2px rgba(0, 0, 0, 0.2);
  }

  #plan #data_album.plan_style .plan_box > div:not(.sp_only) {
    display: none;
    opacity: 0;
    box-shadow: none;
    transition: all linear 0.1s;
  }

  #plan #data_album.plan_style .plan_box > div.active {
    display: block;
    -webkit-animation-name: displayAnime;
    animation-name: displayAnime;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }

  #plan #data_album.plan_style .time_list .time_text {
    font-size: 130%;
  }
  #plan #data_album.plan_style .time_list .camera_text {
    font-size: 130%;
  }

  @-webkit-keyframes displayAnime {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }

  @keyframes displayAnime {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }

  #plan #data_album.plan_style .contents div:nth-of-type(1) {
    background: #e0e6f6 url(../images/plan/data_album/icon_dress.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #data_album.plan_style .contents div:nth-of-type(2) {
    background: #eff3fd url(../images/plan/data_album/icon_hairmake.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #data_album.plan_style .contents div:nth-of-type(3) {
    background: #e0e6f6 url(../images/plan/data_album/icon_data.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #data_album.plan_style .contents div:nth-of-type(4) {
    background: #eff3fd url(../images/plan/data_album/icon_retouch.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #data_album.plan_style .contents div:nth-of-type(5) {
    background: #e0e6f6 url(../images/plan/data_album/icon_album.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #data_album.plan_style .contents div:nth-of-type(6) {
    background: #eff3fd url(../images/plan/data_album/icon_accessories.png) 10px
      center / auto 40px no-repeat;
  }

  /* ハーフデイプラン */
  #plan #halfday {
    margin: 50px auto 0;
    border-radius: 50px 0 0 50px;
    padding: 30px 0px 40px;
  }

  #plan #halfday.plan_style h2 {
    padding: 10px 5px 5px;
  }

  #plan #halfday.plan_style .point p {
    width: 80%;
  }

  #plan #halfday.plan_style .plan_box {
    margin: 35px auto 0;
    padding: 0;
    width: 90%;
    border-radius: 50px;
    background: #fff;
    box-shadow: 0 0 15px -2px rgba(0, 0, 0, 0.2);
  }

  #plan #halfday.plan_style .plan_box > div:not(.sp_only) {
    display: none;
    opacity: 0;
    box-shadow: none;
    transition: all linear 0.1s;
  }

  #plan #halfday.plan_style .plan_box > div.active {
    display: block;
    -webkit-animation-name: displayAnime;
    animation-name: displayAnime;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }

  #plan #halfday.plan_style .time_list .time_text {
    font-size: 130%;
  }
  #plan #halfday.plan_style .time_list .camera_text {
    font-size: 130%;
  }

  @-webkit-keyframes displayAnime {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }

  @keyframes displayAnime {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }

  /*ひとりプラン*/
  #plan #halfday.plan_style .contents div:nth-of-type(1) {
    background: #e3dfcb url(../images/plan/halfday/icon_dress.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents div:nth-of-type(2) {
    background: #f5f3e6 url(../images/plan/halfday/icon_hairmake.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents div:nth-of-type(3) {
    background: #e3dfcb url(../images/plan/halfday/icon_accessories.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents div:nth-of-type(4) {
    background: #f5f3e6 url(../images/plan/halfday/icon_album.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents div:nth-of-type(5) {
    background: #e3dfcb url(../images/plan/halfday/icon_data.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents div:nth-of-type(6) {
    background: #f5f3e6 url(../images/plan/halfday/icon_premierretouch.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents div:nth-of-type(7) {
    background: #e3dfcb url(../images/plan/halfday/icon_inner.png) 20px center /
      auto 40px no-repeat;
  }
  #plan #halfday.plan_style .contents div:nth-of-type(8) {
    background: #f5f3e6 url(../images/plan/halfday/icon_holiday.png) 10px center /
      auto 40px no-repeat;
  }
  #plan #halfday.plan_style .contents div:nth-of-type(9) {
    background: #e3dfcb url(../images/plan/halfday/icon_track.png) 10px center /
      auto 40px no-repeat;
  }

  /*ふたりプラン*/
  #plan #halfday.plan_style .contents.futari div:nth-of-type(1) {
    background: #e3dfcb url(../images/plan/halfday/icon_dress.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(2) {
    background: #f5f3e6 url(../images/plan/halfday/icon_hairmake.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(3) {
    background: #e3dfcb url(../images/plan/halfday/icon_accessories.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(4) {
    background: #f5f3e6 url(../images/plan/halfday/icon_album_w.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(5) {
    background: #e3dfcb url(../images/plan/halfday/icon_data.png) 10px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(6) {
    background: #f5f3e6 url(../images/plan/halfday/icon_premierretouch.png) 10px
      center / auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(7) {
    background: #e3dfcb url(../images/plan/halfday/icon_inner.png) 20px center /
      auto 40px no-repeat;
  }

  #plan #halfday.plan_style .contents.futari div:nth-of-type(8) {
    background: #f5f3e6 url(../images/plan/halfday/icon_futari.png) 0px center /
      auto 40px no-repeat;
  }
  #plan #halfday.plan_style .contents.futari div:nth-of-type(9) {
    background: #e3dfcb url(../images/plan/halfday/icon_holiday.png) 10px center /
      auto 40px no-repeat;
  }
  #plan #halfday.plan_style .contents.futari div:nth-of-type(10) {
    background: #f5f3e6 url(../images/plan/halfday/icon_track.png) 10px center /
      auto 40px no-repeat;
  }

  /*--------------------
link-album
---------------------*/
  #link-album {
    min-width: 100%;
    margin: 0 auto 30px;
  }

  #link-album .album-outer_box {
    display: block;
    padding: 20px 10px 10px;
  }

  #link-album .image-area {
    width: 90%;
    margin: 0 auto;
    margin-right: 20px;
  }

  #link-album .text-area {
    width: 90%;
    margin: 20px auto;
  }

  #link-album .text-area p {
    line-height: 2;
    letter-spacing: 2px;
  }

  #link-album .text-area h3 {
    width: 80%;
    margin: 13px auto 25px;
  }

  #link-album .aimme-text {
    width: 55%;
    margin: 30px auto 0;
  }

  #link-album .link-area {
    padding: 15px;
    text-align: center;
  }

  #link-album .link-area img {
    width: 100%;
  }

  /*--------------------
complex
---------------------*/
  #complex {
    padding: 30px 0 50px;
  }

  h3.comp-title {
    margin: 30px auto 15px;
    font-size: 20px;
  }

  p.contents-info {
    padding: 2px 10px;
  }

  .comp-intro {
    width: 95%;
    margin: 0 auto;
  }

  #complex .retouch_box {
    width: 90%;
  }

  #complex .retouch_box .inner {
    margin-top: 40px;
    width: 100%;
  }

  #complex .retouch_box h4 {
    margin-top: 40px;
  }

  #complex .retouch_box h4 span {
    font-size: 180%;
  }

  #complex .retouch_box .retouch_box {
    width: 90%;
  }

  #complex .retouch_box .inner > p {
    font-size: 100%;
  }

  #complex .retouch_box .inner div p {
    padding: 10px;
  }

  /*--------------------
dress
---------------------*/
  #dress {
    margin: 0 auto;
    padding: 5%;
  }

  .dress-list__item {
    position: relative;
  }

  p.explanatory {
    margin: 5% auto;
    padding: 0 2%;
  }

  .new:before {
    top: 3%;
    right: 5%;
    width: 45px;
    height: 45px;
    margin-top: 0;
    margin-left: 0;
    content: "";
  }

  #dress .modal_list {
    margin: 30px 0 0 -0.5%;
  }

  #dress .modal_list > div {
    margin: 2px 0 0 0.5%;
    width: 49.5%;
  }

  #dress .modal_list a:before {
    right: 0;
    bottom: 0;
    width: 40px;
    height: 40px;
  }

  #dress .digital_catalog {
    width: 90%;
  }

  /*----------------------------
    #js_modal
    ----------------------------*/
  #js_modal .switch_box {
    margin: 0 auto;
  }

  #js_modal .switch {
    margin: 15px 5px 0;
    font-size: 90%;
  }

  /*---------------------
media
---------------------*/
  #media {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 1px;
  }

  #media .title-box {
    background-position-x: 75%;
  }

  .media-list_outer {
    margin: 30px auto 0;
  }

  ul.media-list {
    display: block;
    width: 90%;
    margin: 30px auto 0;
  }

  li.media-list_item {
    display: block;
    width: 95%;
    margin: 0 auto;
    padding: 0;
  }

  li.media-list_item .media-title p {
    line-height: 1.4;
  }

  li.media-list_item p {
    height: auto;
  }

  #media .seemore {
    position: static;
    margin: 20px auto 50px;
  }

  /*---------------------
why
---------------------*/
  #why {
    padding-bottom: 0;
  }

  #why .title-box {
    background-image: url(../images/bg-why_sp.jpg);
  }

  #why h3.title img {
    height: 10vh;
  }

  #why h4 {
    padding: 2px 10px;
  }

  .why-box {
    display: block;
    width: 100%;
    margin: 0 auto;
  }

  .why-box img {
    width: 80%;
  }

  .why-box > div {
    width: 95%;
    margin: 0 auto;
  }

  #why h3.title-voice img {
    height: 6vh;
  }

  p.voice-info {
    font-size: 20px;
  }

  ul.voice-list {
    display: block;
    width: 100%;
    margin: 30px auto;
  }

  ul.voice-list li {
    width: 95%;
    margin: 0 auto 20px;
  }

  /*----- interview -----*/
  .interview {
    margin-top: 60px;
    padding-bottom: 50px;
  }

  .interview h3 img {
    height: 6vh;
  }

  .interview > p {
    width: 95%;
    font-size: 16px;
    margin: 0 auto;
  }

  .interview .list {
    width: 90%;
  }

  .interview .list > div {
    width: 96.33%;
    margin-top: 50px;
  }

  .interview .list > div p {
    line-height: 1.4;
    font-size: 18px;
  }
}

/*----------------------------
trend_table
----------------------------*/

.trend_table {
  max-width: 400px;
  width: 100%;
  border: 3px solid #b9a7a7;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 10px;
  color: #5f5758;
  font-size: 75%;
  margin: 20px auto 0;
}

.trend_th {
  text-align: center;
  padding: 4px 0;
  font-size: 80%;
  border-bottom: 3px solid #b9a7a7;
}

.trend_td {
  vertical-align: top;
  line-height: 1;
  padding-top: 10px;
}

.trend_td .txt {
  font-size: 100%;
  margin-bottom: 5px;
}

.trend_td .txt02 {
  color: #c9829c;
  display: block;
  margin: 5px 0 0;
  font-family: oswald, sans-serif;
  font-size: 130%;
}

.trend_td .txt02 span {
  font-size: 70%;
}

.trend_price {
  margin: 5px auto 14px;
}

.trend_price td {
  vertical-align: bottom;
}

.trend_price .price {
  font-family: oswald, sans-serif;
  font-size: 190%;
}

.trend_price .bold {
  font-size: 125%;
  letter-spacing: 0;
}

.trend_price .bold span {
  display: block;
  font-size: 40%;
}
.trend_locasuta {
  margin: 20px auto 0;
  vertical-align: 0;
}

@media screen and (max-width: 767px) {
  .trend_table {
    font-size: 100%;
  }
}
