@charset "UTF-8";
/* CSS Document */
/*---------------------------------------------------------------
01.top
02.information　お知らせ　一覧
03.information_detail　お知らせ詳細
04.flow　動画制作の流れ
05.template　テンプレート集　一覧
06.template_detail　テンプレート詳細
07.terms_privacypolicy　利用規約・プライバシーポリシー
08.order　ベーシック・カスタム・サブスクプラン専用　注文フォーム
09.order_confirm　ベーシック・カスタム・サブスクプラン専用　確認画面
10.order_done　ベーシック・カスタム・サブスクプラン専用　完了画面
11.custommade　オーダーメイドプラン専用　注文フォーム
12.custommade_confirm　オーダーメイドプラン専用　確認画面
13.custommade_done　オーダーメイドプラン専用　完了画面
14.contact　お問い合わせフォーム
15.contact_confirm　お問い合わせ　確認画面
16.contact_done　お問い合わせ　完了画面
----------------------------------------------------------------*/

/*----------
01.top
----------*/

#top #mv_area {
  position: relative;
  margin-bottom: 150px;
}

#top .mv_cnt {
  position: absolute;
  max-width: 1061px;
  width: 90%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  background-color: #fff;
  border-radius: 77.6px;
}

#top .mv_cnt .mv_text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 840px;
  padding: 32px 0;
  margin: 0 auto;
}

#top .mv_cnt .mv_text .box01 {
  color: #02405A;
  font-size: 31px;
  font-weight: 900;
  line-height: 48px;
  letter-spacing: 0.1em;
  text-align: center;
}

#top .mv_cnt .mv_text .box01 .color01 {
  display: block;
  color: #2D96AC;
}

#top .mv_cnt .mv_text .box02 {
  max-width: 429px;
  width: 51%;
  width: 24.942vw;
}

#top .mv_g .cnt_img .sp {
  display: none;
}

#top .title_g {
  margin: 0 auto 58px;
}

#top .title_g .sub_title {
  color: #02405A;
  font-size: 16px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.01em;
  text-align: center;
  padding-top: 30px;
}

/*informationお知らせリスト*/

#top #information_area {
  margin-bottom: 316px;
}

#top #information_area .arch {
  font-size: 31px;
}

#top #information_area .title_g .sub_title {
  padding-top: 20px;
}

#information_area .contents_in {
  max-width: 1230px;
}

#information_area .information_g {
  display: flex;
  justify-content: center;
  margin: 0 auto 90px;
}

#information_area .information_g li {
  width: 20.84%;
  margin: 0 2.08%;
}

#information_area .information_g li a {
  display: block;
  transition: all 0.3s;
}

#information_area .information_g li a:hover {
  opacity: 0.8;
}

#information_area .information_g li .cnt_img {
  margin-bottom: 25px;
}

#information_area .information_g li .date {
  font-size: 12px;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.06em;
  margin-bottom: 18px;
}

#information_area .information_g li h3 {
  font-size: 13px;
  font-weight: 300;
  line-height: 22px;
  letter-spacing: 0.06em;
}

/*END informationお知らせリスト*/

#top #about_area {
  position: relative;
  background: #FCC800;
  margin-bottom: 190px;
}

#top #about_area .contents_in {
  max-width: 1235px;
}

#top #about_area .cnt_g {
  position: relative;
  display: flex;
  justify-content: space-between;
  max-width: 1155px;
  margin-right: 4.651vw;
}

#top #about_area .cnt_g .left_box {
  position: relative;
  top: -80px;
  max-width: 655px;
  width: 57.5%;
  background: #2D96AC;
  border-radius: 200px;
  color: #FCC800;
  padding: 137px 84px;
  z-index: 1;
}

#top #about_area .cnt_g .left_box::before {
  content: "";
  position: absolute;
  top: -120px;
  width: 133.36px;
  height: 220.88px;
  background: url(../img/common/flag.svg) no-repeat;
  background-size: contain;
}

#top #about_area .cnt_g .left_box h2 {
  font-size: 100px;
  font-weight: 700;
  line-height: 131px;
  letter-spacing: 0.085em;
  margin-bottom: 70px;
}

#top #about_area .cnt_g .left_box .cnt_box {
  padding-left: 64px;
}

#top #about_area .cnt_g .left_box .sub_title {
  font-size: 27.5px;
  font-weight: 700;
  line-height: 39px;
  letter-spacing: 0.14em;
  margin-bottom: 32px;
}

#top #about_area .cnt_g .left_box p {
  font-size: 16px;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 0.06em;
}

#top #about_area .cnt_g .left_box .img_box {
  position: absolute;
  bottom: -145px;
  left: 464px;
  max-width: 707px;
  width: 108%;
  z-index: -1;
}

#top #about_area .cnt_g .right_box {
  position: relative;
  max-width: 430px;
  width: 37.3%;
  display: flex;
  justify-content: space-between;
  margin-top: 211px;
  text-align: center;
}

#top #about_area .cnt_g .right_box .youtube_box {
  width: 245px;
  margin-right: 35px;
}

#top #about_area .cnt_g .right_box .youtube_box img {
  max-width: 181px;
  width: 181px;
  margin: 0 auto 16px;
}

#top #about_area .cnt_g .right_box .youtube_box p {
  color: #02405A;
  font-size: 21px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.14em;
}

#top #about_area .cnt_g .right_box .youtube_box p span {
  display: block;
  font-size: 16px;
  font-weight: 300;
}

#top #about_area .cnt_g .right_box .balloon_box {
  position: absolute;
  top: 0;
  right: -54px;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 243px;
  width: 100%;
  max-height: 122px;
  height: 100%;
  background: url(../img/top/bg_balloon.svg) no-repeat;
  background-size: contain;
}

#top #about_area .cnt_g .right_box .balloon_box p {
  position: relative;
  width: 100%;
  color: #02405A;
  font-size: 30px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0.06em;
  padding-left: 7px;
  padding-bottom: 0.3em;
}

#top #about_area .cnt_g .right_box .balloon_box p span.vertical {
  width: 11.7px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 10px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0;
  margin: -5px 3px 0 0;
  vertical-align: middle;
}

#top #about_area .cnt_g .right_box .balloon_box p span.normal_text {
  font-size: 20px;
  font-weight: 400;
  letter-spacing: -0.1em;
}

#top #about_area .cnt_g .right_box .balloon_box p span.small_text {
  display: block;
  font-size: 21px;
}

#top #service_area {
  margin: 0 auto 150px;
}

#top #service_area .contents_in {
  max-width: 975px;
}

#top #service_area .title_g {
  margin: 0 auto 135px;
}

#top #service_area .arch {
  letter-spacing: 0.1em;
}

#top #service_area .title_g .sub_title span {
  display: block;
  font-weight: 400;
}

#top #service_area .service_g {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 132px;
}

#top #service_area .service_g .cnt_box {
  position: relative;
  width: 27%;
  color: #02405A;
  text-align: center;
}

#top #service_area .service_g .cnt_box::before {
  position: absolute;
  left: 0;
  right: 0;
  content: "";
  display: block;
  width: 264px;
  height: 264px;
  background-color: #F2F4F4;
  border-radius: 50%;
  margin: 0 auto;
  z-index: -1;
}

#top #service_area .service_g .cnt_box .benefit {
  margin: -45px 0 43px;
}

#top #service_area .service_g .cnt_box:last-child .benefit {
  margin: -45px 0 25px;
}

#top #service_area .service_g .cnt_box .benefit span {
  position: relative;
  display: inline-block;
  font-size: 17px;
  font-weight: 300;
  line-height: 20px;
  margin-bottom: 25px;
}

#top #service_area .service_g .cnt_box .benefit span::before,
#top #service_area .service_g .cnt_box .benefit span::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 24px;
  background-color: #02405A;
  position: absolute;
  top: 0px;
}

#top #service_area .service_g .cnt_box .benefit span::before {
  left: -15px;
  transform: rotate(-25deg);
}

#top #service_area .service_g .cnt_box .benefit span::after {
  right: -15px;
  transform: rotate(25deg);
}

#top #service_area .service_g .cnt_box .benefit img {
  margin: 0 auto;
}

#top #service_area .service_g .cnt_box:nth-child(1) .benefit img {
  max-width: 162px;
}

#top #service_area .service_g .cnt_box:nth-child(2) .benefit img {
  max-width: 166px;
}

#top #service_area .service_g .cnt_box:nth-child(3) .benefit img {
  max-width: 278px;
}

#top #service_area .service_g h3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.06em;
  margin-bottom: 35px;
}

#top #service_area .service_g .cnt_box:nth-child(3) h3 {
  margin-bottom: 10px;
}

#top #service_area .service_g h3 span {
  display: block;
  font-size: 13px;
  font-weight: 400;
  line-height: 25px;
}

#top #service_area .service_g p {
  font-size: 15px;
  line-height: 28px;
  letter-spacing: 0.06em;
}

#top #plan_area {
  background: #2D96AC;
  padding: 135px 0 220px;
  margin-bottom: 123px;
}

#top #plan_area .contents_in {
  max-width: 1300px;
}

#top #plan_area .title_g {
  margin: 0 auto 78px;
}

#top #plan_area h2 {
  color: #fff;
}

#top #plan_area .arch {
  letter-spacing: 0.1em;
}

#top #plan_area .arch::before {
  background-color: #fff;
}

#top #plan_area .sub_title {
  color: #fff;
}

#top #plan_area .plan_g {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 39px;
}

#top #plan_area .plan_g .cnt_box {
  width: 23%;
  background-color: #FCC800;
  border: 1px solid #02405A;
  border-radius: 13.52px;
  color: #02405A;
}

#top #plan_area .plan_g .cnt_box .decoration {
  margin: -20px auto 20px;
}

#top #plan_area .plan_g .cnt_box .decoration img {
  margin: 0 auto;
}

#top #plan_area .plan_g .cnt_box:nth-child(1) .decoration img {
  max-width: 85px;
}

#top #plan_area .plan_g .cnt_box:nth-child(2) .decoration img {
  max-width: 122px;
}

#top #plan_area .plan_g .cnt_box:nth-child(3) .decoration img {
  max-width: 196px;
}

#top #plan_area .plan_g .cnt_box:nth-child(4) .decoration img {
  max-width: 220px;
}

#top #plan_area .plan_g .cnt_box .cnt_img {
  max-width: 197.5px;
  margin: 0 auto 25px;
}

#top #plan_area .plan_g .cnt_box h3 {
  font-size: 20px;
  font-weight: 900;
  line-height: 32px;
  margin-bottom: 14px;
  text-align: center;
}

#top #plan_area .plan_g .cnt_box .inner {
  border-top: 1px solid #02405A;
  padding: 19px 28px 50px;
}

#top #plan_area .plan_g .cnt_box p {
  font-size: 15px;
  line-height: 28px;
  margin-bottom: 20px;
}

#top #plan_area .plan_g .cnt_box p span {
  display: block;
  font-size: 12px;
  letter-spacing: 0.06em;
}

#top #plan_area .plan_g .cnt_box dl>div {
  display: flex;
  align-items: baseline;
  margin-bottom: 14px;
}

#top #plan_area .plan_g .cnt_box dl dt {
  width: 77px;
  background-color: #02405A;
  border-radius: 12px;
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  line-height: 19px;
  letter-spacing: 0.1em;
  padding: 3px 2px 2px;
  text-align: center;
}

#top #plan_area .plan_g .cnt_box dl dd {
  width: calc(100% - 77px);
  font-size: 17px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.05em;
  margin-left: 10px;
}

#top #plan_area .plan_g .cnt_box dl dd {
  width: calc(100% - 77px);
  font-size: 17px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0.05em;
  margin-left: 10px;
}

#top #plan_area .plan_g .cnt_box dl dd span.text_small {
  display: block;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 19px;
}

#top #plan_area .plan_g .cnt_box dl dd span.text_small02 {
  font-size: 10px;
  letter-spacing: 0;
  line-height: 19px;
}

#top #plan_area .table_g {
  background: #E6EBEB;
  border-radius: 12.86px;
  padding: 36px 45px 38px;
}

#top #plan_area .table_g table {
  width: 100%;
  table-layout: fixed;
  word-break: break-word;
}

#top #plan_area .table_g table {
  width: 100%;
  table-layout: fixed;
  word-break: break-word;
  border-collapse: separate;
  border-spacing: 3px;
  text-align: center;
  vertical-align: middle;
}

#top #plan_area .table_g table tr:nth-child(8) th,
#top #plan_area .table_g table tr:nth-child(11) th,
#top #plan_area .table_g table tr:nth-child(12) th {
  background: #E6EBEB;
}

#top #plan_area .table_g table tr:nth-child(8) td,
#top #plan_area .table_g table tr:nth-child(11) td {
  background: #C5D0D0;
  color: #02405A;
  font-size: 16px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0.1em;
  padding: 5.7px 10px 6.6px;
}

#top #plan_area .table_g table th {
  width: 23%;
  background: #C5D0D0;
  color: #02405A;
  font-size: 16px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 13.8px 10px 12.8px;
}

#top #plan_area .table_g table .plan th {
  width: 18.8%;
  background: #02405A;
  color: #fff;
  font-weight: 500;
}

#top #plan_area .table_g table .plan th:first-child {
  width: 23%;
  background: #E6EBEB;
}

#top #plan_area .table_g table th.ls_0 {
  letter-spacing: -0.06em;
}

#top #plan_area .table_g table td {
  background: #fff;
  color: #02405A;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 0.1em;
  vertical-align: middle;
  padding: 7.2px 0;
}

#top #plan_area .table_g table td span {
  font-size: 12px;
  letter-spacing: 0;
}

#top #plan_area .table_g table td.ls_0 {
  letter-spacing: -0.06em;
}

#top #line_area {
  margin: 0 auto 140px;
}

#top #line_area .contents_in {
  max-width: 941px;
}

#top #line_area .cnt_g a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #fff;
  border: 5px solid #06C755;
  border-radius: 30px;
  padding: 40px 45px;
  transition: all 0.3s;
}

#top #line_area .cnt_g a:hover {
  opacity: 0.8;
}

#top #line_area .cnt_g .cnt_text {
  color: #06C755;
  font-weight: 700;
  text-align: center;
  padding-top: 18px;
}

#top #line_area .cnt_g h3 {
  border-bottom: 1px solid #06C755;
  font-size: 21px;
  line-height: 28px;
  letter-spacing: 0.14em;
  margin-bottom: 7px;
  padding-bottom: 15px;
}

#top #line_area .cnt_g .cnt_text p {
  font-size: 26px;
  line-height: 62px;
  letter-spacing: 0.06em;
}

#top #line_area .cnt_g .cnt_text p .text_big {
  font-size: 44px;
}

#top #line_area .cnt_g .cnt_text p .text_mdl {
  font-size: 34px;
}

#top #line_area .cnt_g .qr_box {
  max-width: 130.8px;
}

#top #line_area .cnt_g .icon_box {
  max-width: 130.4px;
}

/*template動画テンプレートリスト*/
#top #template_area {
  margin-bottom: 100px;
}

#top #template_area .title_g {
  margin-bottom: 120px;
}

#template_area .contents_in {
  max-width: 1240px;
}

#template_area .templete_g {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto 15px;
}

#template_area .templete_g .cnt_box {
  position: relative;
  width: 28.4%;
  margin: 0 2.45% 83px;
}

#template_area .templete_g .cnt_box a {
  display: block;
  transition: all 0.3s;
}

#template_area .templete_g .cnt_box a:hover {
  opacity: 0.8;
}

#template_area .templete_g .cnt_box .cnt_img {
  border: 1px solid #738C8C;
  margin: 0 auto 16.5px;
}

#template_area .templete_g .cnt_box .new {
  position: absolute;
  top: -20px;
  left: -15px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  background-color: #FCC800;
  border-radius: 50%;
  color: #02405A;
  font-size: 13.6px;
  font-weight: 900;
}

#template_area .templete_g .cnt_box .cate_g {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

#template_area .templete_g .cnt_box .cate_g li {
  width: 100px;
  background-color: #5CA4A6;
  border-radius: 11.5px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.06em;
  text-align: center;
  padding: 2px 0 4px;
  margin: 0 18px 10px 0;
}

#template_area .templete_g .cnt_box h3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 35px;
  letter-spacing: 0.08em;
}

/*END template動画テンプレートリスト*/

#top #faq_area .arch {
  line-height: 88px;
  letter-spacing: 0.3em;
}

#top #faq_area .contents_in {
  max-width: 1176px;
}

#top #faq_area .arch::before {
  display: none;
}

#top #faq_area .title_g {
  margin: 0 auto 160px;
}

#top #faq_area .title_g .sub_title {
  padding: 0;
  margin: -45px auto 0;
}

#top #faq_area .title_g .sub_title a {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #FCC800;
  border: 2px solid #FCC800;
  border-radius: 80px;
  color: #02405A;
  font-size: 26.3px;
  line-height: 38px;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 61px 0 55px;
  transition: all 0.3s;
}

#top #faq_area .title_g .sub_title a:hover {
  background-color: #fff;
  border: 2px solid #FCC800;
  border-radius: 80px;
}


/*-----------------------------
02.information　お知らせ　一覧
------------------------------*/
#information {
  padding-bottom: 160px;
}

#information .information_g {
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto 15px;
}

#information .information_g li {
  margin: 0 2.08% 70px;
}


/*---------------------------------
03.information_detail　お知らせ詳細
----------------------------------*/

/*詳細ページ共通部分*/

.detail_page .article_area .contents_in {
  max-width: 860px;
}

.detail_page .article_area .cnt_img {
  margin: 0 auto 58px;
}

.detail_page .article_area .detail_text {
  font-size: 15px;
  font-weight: 300;
  line-height: 32px;
  letter-spacing: 0.08em;
  margin: 0 auto 75px;
}

.detail_page .article_area .detail_text p {
  margin-bottom: 1em;
}

.detail_page .article_area .btn_g {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 60px;
}

.detail_page .article_area .btn_g .contents_btn.btn_next {
  margin: 0 0 0 auto;
}

.detail_page .article_area .btn_g .contents_btn a {
  position: relative;
  display: block;
  color: #02405A;
  font-size: 16px;
  line-height: 21px;
  letter-spacing: 0.16em;
  text-align: center;
  transition: all 0.3s;
}

.detail_page .article_area .btn_g .contents_btn a::after {
  content: "";
  position: relative;
  right: 0;
  bottom: -6px;
  display: block;
  width: 88.19px;
  height: 8.08px;
  background: url(../img/common/page_arrow_left.svg) no-repeat;
  background-size: contain;
  transition: all 0.3s;
}

.detail_page .article_area .btn_g .contents_btn.btn_next a::after {
  left: 0;
  transform: scale(-1, 1);
}

.detail_page .article_area .btn_g .contents_btn a:hover::after {
  right: 10px;
}

.detail_page .article_area .btn_g .contents_btn.btn_next a:hover::after {
  left: 10px;
}



/*詳細ページ共通部分*/

#information_detail {
  padding-bottom: 130px;
}

#information_detail .title_area {
  margin: 160px auto 100px;
}

#information_detail .article_area .date {
  font-size: 12px;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.06em;
  margin-bottom: 84px;
  text-align: left;
}

#information_detail .article_area .article_title {
  font-size: 17px;
  font-weight: 500;
  line-height: 22px;
  letter-spacing: 0.06em;
  margin-bottom: 80px;
}




/*----------------------
04.flow　動画制作の流れ
-----------------------*/
#flow {
  padding-bottom: 250px;
}

#flow .title_area {
  margin: 160px auto 70px;
}

#flow #flow_area .contents_in {
  max-width: 1230px;
}

#flow #flow_area .cnt_g {
  display: flex;
  align-items: flex-start;
}

#flow #flow_area .cnt_g .left_box {
  position: relative;
  max-width: 483px;
  width: 39.8%;
  background: #2D96AC;
  border-radius: 148px;
  color: #FCC800;
  padding: 76px 77px 73px;
  margin-right: 3.8%;
  z-index: 1;
}

#flow #flow_area .cnt_g .left_box::before {
  content: "";
  position: absolute;
  top: -123px;
  left: 61px;
  width: 133.36px;
  height: 220.88px;
  background: url(../img/common/flag.svg) no-repeat;
  background-size: contain;
}

#flow #flow_area .cnt_g .left_box h2 {
  font-size: 56px;
  font-weight: 700;
  line-height: 70px;
  letter-spacing: 0.1em;
  margin-bottom: 69px;
  text-align: center;
}

#flow #flow_area .cnt_g .left_box h2 span.color_white {
  display: block;
  color: #fff;
  font-size: 35px;
}

#flow #flow_area .cnt_g .left_box h2 span.text_big {
  font-size: 79px;
}


#flow #flow_area .cnt_g .left_box h2 span.more_big {
  font-size: 163px;
  letter-spacing: 0.1em;
}

#flow #flow_area .cnt_g .left_box p {
  color: #fff;
  font-size: 18.6px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0.06em;
}

#flow #flow_area .cnt_g .right_box {
  position: relative;
  max-width: 589px;
  width: 47.9%;
  margin-top: 76.2px;
}

#flow #flow_area .cnt_g .right_box {
  position: relative;
  max-width: 589px;
  width: 47.9%;
}

#flow #flow_area .cnt_g .right_box li {
  position: relative;
  display: flex;
  border: 1px solid #02405A;
  border-radius: 70px;
  padding: 39px 37px 38px 68px;
  margin-bottom: 94px;
}

#flow #flow_area .cnt_g .right_box li:last-child {
  align-items: center;
  background: #FCC800;
  border: none;
  padding: 36.6px 37px 37px 35.5px;
  margin-bottom: 0;
}

#flow #flow_area .cnt_g .right_box li::after {
  position: absolute;
  bottom: -67px;
  left: 50%;
  content: "";
  display: block;
  width: 60.21px;
  height: 34.11px;
  background: url(../img/flow/arrow_down.svg) no-repeat;
  background-size: contain;
  transform: translateX(-50%);
}

#flow #flow_area .cnt_g .right_box li .number {
  width: 78.6px;
  margin-right: 9%;
}

#flow #flow_area .cnt_g .right_box li .cnt_text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 72.3%;
  color: #02405A;
}

#flow #flow_area .cnt_g .right_box li .cnt_text h3 {
  font-size: 22px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.06em;
  margin-bottom: 7.8px;
  text-align: left;
}

#flow #flow_area .cnt_g .right_box li .cnt_text p {
  font-size: 15px;
  line-height: 28px;
  letter-spacing: 0.06em;
}

#flow #flow_area .cnt_g .right_box li:last-child::after {
  display: none;
}

#flow #flow_area .cnt_g .right_box li:last-child .number {
  width: 133px;
  color: #02405A;
  font-size: 27px;
  font-weight: 700;
  line-height: 36px;
  letter-spacing: 0.02em;
  margin-right: 6%;
}





/*------------------------------
05.template　テンプレート集　一覧
--------------------------------*/
#template {
  padding-bottom: 250px;
}

#template .title_area {
  margin: 125px auto 108px;
}

#template .category_list_area {
  margin: 0 auto 106px;
}

#template #template_area .templete_g .cnt_box {
  margin: 0 2.45% 50px;
}

#template #template_area .templete_g {
  margin: 0 auto 205px;
}

#template #template_area .templete_g .cnt_box .cate_g li:nth-child(2n) {
  margin: 0 0 10px 0;
}

#template .category_list_area .temp_cate_g li a.current {
  background-color: #02405A;
}

/*modal*/

#modal_area {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  height: 100%;
  width: 100vw;
  z-index: 999999;
  overflow: auto;
}

#modal_area .modal_bg {
  position: fixed;
  top: 0%;
  height: 0;
  width: 100vw;
  height: 100%;
  background: #ECECEC;
}

#modal_area .modal_block {
  position: absolute;
  left: 50%;
  top: 123px;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
}

#modal_area .modal_block .inner {
  position: relative;
  max-width: 1298px;
  width: 94%;
  padding: 0 0 123px;
  margin: 0 auto;
}

#modal_area .modal_block .modal_cnt {
  width: 100%;
  background: #FCC800;
  border-radius: 20px;
  padding: 70px 140px 75px;
  margin: 0 auto;
}

#modal_area .close_btn {
  position: absolute;
  right: -11px;
  top: -15px;
  cursor: pointer;
  transition: all 0.2s;
}

#modal_area .close_btn:hover {
  opacity: 0.9;
}

#modal_area .close_btn::before {
  display: block;
  width: 52.6px;
  height: 53.33px;
  content: "";
  background: url(../img/template/btn_close.svg) no-repeat;
  background-size: contain;
}

#modal_area .modal_block .cnt_box {
  border-bottom: 1px solid #02405A;
  margin: 0 auto 50px;
}

#modal_area .modal_block .cnt_box:nth-child(2) {
  border-bottom: none;
  margin: 0 auto
}

#modal_area .modal_block .cnt_box .plan_g ul {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  margin: 0 auto 24px;
}

#modal_area .modal_block .cnt_box:nth-child(2) .plan_g ul {
  justify-content: center;
}

#modal_area .modal_block .cnt_box .plan_g ul li {
  max-width: 299px;
  width: 29.9%;
  background-color: #fff;
  border: 1px solid #02405A;
  border-radius: 28.35px;
  color: #02405A;
  font-size: 21px;
  font-weight: 700;
  line-height: 30px;
  padding: 21.5px 5px;
  text-align: center;
}

#modal_area .modal_block .cnt_box .plan_g span {
  display: block;
  color: #02405A;
  font-size: 25px;
  font-weight: 700;
  line-height: 36px;
  text-align: center;
  margin-bottom: 40px;
}

#modal_area .modal_block .cnt_box p {
  color: #02405A;
  font-size: 20px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
  margin-bottom: 44px;
  padding: 0 50px;
}

#modal_area .btn_ptn04 {
  max-width: 470px;
  width: 100%;
  margin: 0 auto;
}

#modal_area .btn_ptn04 a {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #02405A;
  border: 2px solid #02405A;
  border-radius: 46px;
  color: #FCC800;
  font-size: 21.6px;
  font-weight: 700;
  line-height: 30px;
  letter-spacing: 0.1em;
  padding: 13px 0 15px;
  text-align: center;
  transition: all 0.3s;
}

#modal_area .btn_ptn04 a:hover {
  background-color: #fff;
  color: #02405A;
}

#modal_area .close_btn02 {
  max-width: 200px;
  width: 100%;
  margin: 55px auto 0;
}

#modal_area .close_btn02 span {
  position: relative;
  display: block;
  width: 100%;
  background-color: #fff;
  border: 1px solid #02405A;
  border-radius: 22px;
  color: #02405A;
  font-size: 16px;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: 0.16em;
  padding: 7px 5px;
  text-align: center;
  transition: all 0.3s;
  cursor: pointer;
}

#modal_area .close_btn02 span:hover {
  background-color: #02405A;
  color: #fff;
}

#modal_area .close_btn02 span::after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(../img/template/btn_close02.svg) no-repeat;
  background-size: contain;
  transform: translateY(-50%);
}

#modal_area .close_btn02 span:hover::after {
  background: url(../img/template/btn_close02_white.svg) no-repeat;
  background-size: contain;
}

#modal_area .modal_block .cnt_box .plan_g li.close_btn03 {
  transition: all 0.3s;
  cursor: pointer;
}

#modal_area .modal_block .cnt_box .plan_g li.close_btn03:hover {
  background-color: #02405A;
  color: #fff;
}

/*END modal*/


/*-----------------------------------
06.template_detail　テンプレート詳細
------------------------------------*/
/*categoryリスト*/
.under_page .temp_cate_g {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto 21px;
}

.under_page .temp_cate_g li a {
  display: block;
  width: 100px;
  background-color: #5CA4A6;
  border-radius: 11.5px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 17px;
  letter-spacing: 0.06em;
  text-align: center;
  padding: 2px 0 4px;
  margin: 0 9px 10px;
  transition: all 0.3s;
}

.under_page .temp_cate_g li a:hover {
  opacity: 0.8;
}

.under_page .category_list_area .contents_in {
  max-width: 1215px;
}

.under_page .category_list_area .temp_cate_g {
  margin: 0 auto;
}

.under_page .category_list_area .temp_cate_g li a {
  margin: 0 17.5px 10px;
}


/*END categoryリスト*/

#template_detail {
  padding-bottom: 200px;
}

#template_detail .title_area {
  margin: 160px auto 110px;
}

#template_detail #movie_tmp_area {
  margin: 0 auto 101px;
}

#template_detail #movie_tmp_area .article_title {
  font-size: 20px;
  font-weight: 700;
  line-height: 35px;
  letter-spacing: 0.08em;
  text-align: center;
  margin-bottom: 66px;
}

#template_detail #movie_tmp_area .movie_box {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin: 0 auto 97px;
}

#template_detail #movie_tmp_area .movie_box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#template_detail .btn_ptn02 {
  margin: 0 auto 108px;
}


/*--------------------------------------------------
07.terms_privacypolicy　利用規約・プライバシーポリシー
---------------------------------------------------*/

#terms_privacypolicy .link_g {
  max-width: 503px;
  margin: 118px auto 0;
}

#terms_privacypolicy .link_g .btn {
  display: flex;
  justify-content: space-between;
}

#terms_privacypolicy .link_g .btn span {
  display: block;
  width: 239px;
}

#terms_privacypolicy .link_g .btn span a {
  display: block;
  width: 100%;
  background: #FCC800;
  border-radius: 22.66px;
  color: #02405A;
  font-size: 16.62px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.06em;
  text-align: center;
  padding: 18px 0;
  transition: all 0.3s;
}

#terms_privacypolicy .link_g .btn span a:hover {
  background: #02405A;
  color: #fff;
}

#terms_privacypolicy .title_area {
  margin: 0 auto 84.5px;
  padding-top: 95.6px;
}

#terms_privacypolicy .clause_area {
  background-color: #E5E9E9;
  padding: 85px 0 150px;
}

#terms_privacypolicy .clause_area .contents_in {
  max-width: 1180px;
}

#terms_privacypolicy .clause_area h3 {
  color: #02405A;
  font-size: 18px;
  font-weight: 500;
  line-height: 26px;
  letter-spacing: 0.06em;
  margin-bottom: 29px;
}

#terms_privacypolicy .clause_area ol.list_g {
  margin-bottom: 40px;
}

#terms_privacypolicy .clause_area ol.list_g.g_ptn {
  padding-left: 2em;
}

#terms_privacypolicy .clause_area p,
#terms_privacypolicy .clause_area ol li {
  font-size: 15px;
  font-weight: 300;
  line-height: 32px;
  letter-spacing: 0.07em;
}

#terms_privacypolicy .clause_area p {
  margin-bottom: 25px;

}

#terms_privacypolicy .clause_area p.first_text {
  font-weight: 500;
  margin-bottom: 70px;
  letter-spacing: 0;
}

#terms_privacypolicy .clause_area ol {
  padding-left: 0.5em;
}

#terms_privacypolicy .clause_area ol li {
  position: relative;
  padding: 0 0 0 25px;
}

#terms_privacypolicy .clause_area ol li span {
  position: absolute;
  left: 0;
  display: inline-block;
  width: 100%;
  max-width: 25px;
}

#terms_privacypolicy .clause_area ol.list_child {
  margin: 1em 0;
}

#terms_privacypolicy .clause_area p.list_text {
  margin-bottom: 3em;
}

#terms_privacypolicy .clause_area p.last_text {
  margin: 10px 0 0;
}

#terms_privacypolicy .clause_area p.last_text span {
  display: inline-block;
  font-weight: 500;
  margin-left: 20px;
}

#terms_privacypolicy .clause_area p.last_text02 {
  font-weight: 500;
  padding-top: 0.5em;
  margin-bottom: 0;
}

#terms_privacypolicy #privacypolicy_area .title_area {
  margin: 0 auto 78px;
  padding-top: 135px;
}



/*----------------------------------------------------------
08.order　ベーシック・カスタム・サブスクプラン専用　注文フォーム
------------------------------------------------------------*/

/*フォームデフォルトCSS*/

.form_page .title_area {
  margin: 100px auto 84px;
}

.form_page .title_area .arch {
  padding-bottom: 40px;
  margin-bottom: 77px;
}

.form_page .title_g .sub_title {
  display: block;
  font-size: 20px;
}

.form_page .title_area .plan_list {
  display: flex;
  justify-content: center;
  max-width: 793px;
  width: 96%;
  margin: 0 auto 28px;
}

.form_page .title_area .plan_list .list {
  display: block;
  max-width: 239px;
  width: 30.14%;
  background-color: #FCC800;
  border-radius: 22.66px;
  color: #02405A;
  font-size: 16.6px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.06em;
  padding: 18.1px 5px;
  text-align: center;
  margin: 0 1.6%;
}

.form_page #form_area {
  background-color: #E5E9E9;
  padding: 79px 0 153px;
}

.form_page #form_area .contents_in {
  max-width: 620px;
}

.form_page #form_area .contents_in {
  max-width: 620px;
}

.form_page #form_area .btn_other {
  max-width: 316px;
  margin: 0 auto 91px;
}

.form_page #form_area .btn_other a {
  display: inline-block;
  width: 100%;
  background-color: #fff;
  border: 1px solid #02405A;
  border-radius: 30.94px;
  color: #02405A;
  font-size: 14.5px;
  font-weight: 700;
  line-height: 20.35px;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 8.5px 5px 10.6px;
  transition: all 0.3s;
}

.form_page #form_area .btn_other a:hover {
  background-color: #02405A;
  color: #fff;
}

.form_page #form_area h3 {
  max-width: 140px;
  width: 100%;
  background-color: #02405A;
  border-radius: 5px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.18em;
  padding: 1.4px 0 1.4px;
  text-align: center;
  margin-bottom: 20px;
}

.form_page #form_area .info_g {
  padding-bottom: 28px;
}

.form_page #form_area .order_g {
  padding-bottom: 30px;
}

.form_page #form_area .label_g {
  display: flex;
  justify-content: space-between;
}

.form_page #form_area .label_g .link_btn {
  max-width: 128.8px;
  width: 100%;
  border-radius: 1.67px;
}

.form_page #form_area .label_g .link_btn a {
  display: inline-block;
  width: 100%;
  background: #789A99;
  border: 1px solid #789A99;
  ;
  border-radius: 1.67px;
  color: #fff;
  font-size: 12.5px;
  line-height: 19px;
  padding: 2.5px 5px;
  text-align: center;
  transition: all 0.3s;
}

.form_page #form_area .label_g .link_btn a:hover {
  background: #fff;
  color: #789A99;
}

.form_page #form_area .attention_g {
  max-width: 475px;
  padding-bottom: 32px;
  margin: 0 auto;
}

.form_page #form_area .attention_g p {
  color: #727171;
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0.06em;
  margin-bottom: 60px;
}

.form_page #form_area .note_text {
  color: #668382;
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 0.06em;
  margin-top: 13px;
}


/*formパーツ*/

.form_page #form_area .item {
  margin: 0 auto 32.8px;
}

.form_page #form_area .label {
  color: #668382;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: 0.06em;
  margin-bottom: 10px;
}

.form_page #form_area .label .required {
  display: inline-block;
  background-color: #FCC800;
  border-radius: 10.51px;
  color: #02405A;
  font-size: 9.6px;
  line-height: 14px;
  margin-left: 10px;
  padding: 3px 9.1px 4px;
  vertical-align: text-bottom;
}

.form_page #form_area .item .no_bg {
  background-color: transparent;
}

.form_page #form_area .text_input input {
  background-color: #fff;
  border: none;
  color: #02405A;
  font-size: 15px;
  font-weight: 500;
  line-height: 21px;
  letter-spacing: 0.06em;
  width: 100%;
  min-height: 50px;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 14px;
  padding: 14.5px 40px;
}

.form_page #form_area textarea {
  background-color: #fff;
  border: none;
  color: #02405A;
  font-size: 15px;
  font-weight: 500;
  line-height: 21px;
  letter-spacing: 0.06em;
  max-width: 620px;
  width: 100%;
  min-height: 125px;
  height: 100%;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 14px;
  padding: 14px 40px;
}

.form_page #form_area .text_input input::placeholder,
.form_page #form_area textarea::placeholder {
  color: #C6C7C7;
}

.form_page #form_area .text_input input:-ms-input-placeholder,
.form_page #form_area textarea::placeholder {
  color: #C6C7C7;
}

.form_page #form_area .text_input input::-ms-input-placeholder,
.form_page #form_area textarea::placeholder {
  color: #C6C7C7;
}

.form_page #form_area .text_input input[type="text"]:focus,
.form_page #form_area textarea:focus {
  outline: solid 1px #789A99;
}

.form_page #form_area .item_radio {
  background-color: #fff;
  border-radius: 14px;
  color: #02405A;
  font-size: 15px;
  font-weight: 500;
  line-height: 21px;
  letter-spacing: 0.06em;
  width: 100%;
  min-height: 50px;
  padding: 14.5px 40px;
}

.form_page #form_area .item_radio input {
  display: none;
}

.form_page #form_area .item_radio label span {
  position: relative;
  color: #02405A;
  font-size: 15px;
  font-weight: 500;
  line-height: 21px;
  letter-spacing: 0.06em;
  padding-left: 24px;
  margin-right: 72px;
  cursor: pointer;
}

.form_page #form_area .item_radio>span:last-of-type label span.mwform-radio-field-text {
  margin-right: 0;
}

.form_page #form_area .item_radio label span:before {
  content: "";
  position: absolute;
  margin: auto;
  top: 2px;
  bottom: 0;
  left: 0;
  border: 1px solid #02405A;
  border-radius: 50%;
  width: 16.55px;
  height: 16.55px;
}

.form_page #form_area .item_radio label span:after {
  content: "";
  position: absolute;
  margin: auto;
  top: 2px;
  bottom: 0;
  left: 4.5px;
  background-color: #2D96AC;
  border-radius: 50%;
  opacity: 0;
  width: 7.24px;
  height: 7.24px;
}

.form_page #form_area .item_radio input:checked+span:after {
  opacity: 1;
}

.form_page #form_area .item_checkbox {
  margin: 17px 0 0 40px;
}

.form_page #form_area .item_checkbox input[type=checkbox] {
  display: none;
}

.form_page #form_area .item_checkbox .mwform-checkbox-field-text {
  color: #02405A;
  font-size: 15px;
  font-weight: 700;
  line-height: 21px;
  letter-spacing: 0.06em;
  display: flex;
  position: relative;
  padding-left: 30px;
  cursor: pointer;
}

.form_page #form_area .item_checkbox .mwform-checkbox-field-text:before,
.form_page #form_area .item_checkbox .mwform-checkbox-field-text:after {
  content: '';
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
}

.form_page #form_area .item_checkbox .mwform-checkbox-field-text:before {
  background: #E5E9E9;
  margin-right: 12px;
  border: 1px solid #02405A;
  border-radius: 50%;
  width: 16.55px;
  height: 16.55px;
  transition: all 0.3s;
}

.form_page #form_area .item_checkbox input[type=checkbox]:checked+.mwform-checkbox-field-text:before {
  background: #02405A;
}

.form_page #form_area .item_checkbox input[type=checkbox]:checked+.mwform-checkbox-field-text:after {
  top: 7px;
  left: 4px;
  width: 7px;
  height: 5px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/*attention_gチェックボックス*/
.form_page #form_area .item_checkbox02 {
  position: relative;
  display: flex;
  justify-content: flex-start;
  max-width: 335px;
  margin: 0 auto 32.6px;
}

.form_page #form_area .item_checkbox02 input[type=checkbox] {
  display: none;
}

.form_page #form_area .item_checkbox02 .mwform-checkbox-field-text {
  display: flex;
  position: relative;
}

.form_page #form_area .item_checkbox02 .agree_text {
  color: #727171;
  font-size: 16px;
  font-weight: 700;
  line-height: 25px;
  letter-spacing: 0.06em;
  display: flex;
  position: relative;
  padding-left: 32px;
}

.form_page #form_area .item_checkbox02 .agree_text a {
  color: #668382;
  text-decoration: underline;
  transition: all 0.3s;
}

.form_page #form_area .item_checkbox02 .agree_text a:hover {
  opacity: 0.8;
}

.form_page #form_area .item_checkbox02 .mwform-checkbox-field-text:before,
.form_page #form_area .item_checkbox02 .mwform-checkbox-field-text:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 25.27px;
  height: 25.27px;
}

.form_page #form_area .item_checkbox02 .mwform-checkbox-field-text:before {
  background: #fff;
  margin-right: 12px;
  border: 1px solid #727171;
  border-radius: 1.93px;
  width: 25.27px;
  height: 25.27px;
  transition: all 0.3s;
}

.form_page #form_area .item_checkbox02 input[type=checkbox]:checked+.mwform-checkbox-field-text:after {
  top: 7px;
  left: 6px;
  width: 14px;
  height: 9px;
  border-left: 3px solid #2D96AC;
  border-bottom: 3px solid #2D96AC;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.form_page #form_area .mw_wp_form input[name="__children[agree_terms][]"]+.error,
.form_page #form_area .mw_wp_form input[name="__children[agree_privacypolicy][]"]+.error {
  position: absolute;
  bottom: -18px;
}

/*END　attention_gチェックボックス*/

/*確認・送信ボタン*/
.form_page #form_area .btn_box {
  width: 100%;
  max-width: 325px;
  margin: 0 auto;
}

.form_page #form_area .btn_box .btn_ptn {
  width: 100%;
  max-width: 325px;
}

.form_page #form_area .btn_box .btn_ptn input:first-child {
  margin: 0 auto 20px;
}

.form_page #form_area .btn_box .btn_ptn input {
  width: 100%;
  background-color: #FCC800;
  border-radius: 31.76px;
  color: #02405A;
  font-size: 21.6px;
  font-weight: 700;
  line-height: 31px;
  letter-spacing: 0.18em;
  text-align: center;
  padding: 16.8px;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  transition: all 0.3s;
}

.form_page #form_area .btn_box .btn_ptn input:hover {
  background-color: #02405A;
  color: #fff;
}

.form_page #form_area .btn_box .btn_ptn input.btn_back {
  background-color: #898989;
  color: #fff;
}

.form_page #form_area .btn_box .btn_ptn input.btn_back:hover {
  background-color: #02405A;
}


/*END　確認・送信ボタン*/

#order.form_page #form_area .confirm_area {
  display: none;
}

/*END　フォームデフォルトCSS*/


/*--------------------------------------------------------------
09.order_confirm　ベーシック・カスタム・サブスクプラン専用　確認画面
---------------------------------------------------------------*/

/*フォームデフォルトCSS*/

.form_page.confirm #form_area {
  padding: 79px 0 195px;
}

.form_page.confirm #form_area .btn_other {
  display: none;
}

.form_page.confirm #form_area .confirm_area {
  display: block;
  max-width: 760px;
  text-align: center;
  margin: 0 auto 92px;
}

.form_page.confirm #form_area .confirm_area h3 {
  max-width: none;
  background-color: transparent;
  border-radius: 0;
  color: #02405A;
  font-size: 20px;
  letter-spacing: 0.2em;
  padding: 0;
  text-align: center;
  margin-bottom: 38px;
}

.form_page.confirm #form_area .confirm_area p {
  color: #02405A;
  font-size: 17px;
  font-weight: 500;
  line-height: 30px;
  letter-spacing: 0.06em;
}

.form_page.confirm #form_area .confirm_area p.attention {
  display: inline-block;
  background: #FCC800;
  padding: 2px 20px;
  margin-bottom: 16px;
}

.form_page.confirm #form_area .confirm_area p .note {
  display: block;
  font-size: 13px;
  font-weight: 400;
}

.form_page.confirm #form_area .order_g {
  padding-bottom: 78px;
}

.form_page.confirm #form_area .note_text {
  display: none;
}

/*formパーツ*/
.form_page.confirm #form_area .contents_in {
  max-width: 760px;
}

.form_page.confirm #form_area .item {
  display: flex;
  align-items: baseline;
  border-bottom: 1px solid #C6C7C7;
  padding-bottom: 22px;
  margin: 0 auto 26.5px;
}

.form_page.confirm #form_area form .label {
  max-width: 338px;
  width: 44.5%;
  margin-bottom: 0;
}

.form_page.confirm #form_area form p {
  width: calc(100% - 44.5%);
  color: #231815;
  font-size: 16px;
  font-weight: 500;
  line-height: 32px;
}

.form_page.confirm #form_area form .tmp_g {
  width: calc(100% - 44.5%);
}

.form_page.confirm #form_area form .tmp_g p {
  width: 100%;
}

.form_page.confirm #form_area .label .required {
  border-radius: 13.14px;
  font-size: 12px;
  margin-left: 9px;
  padding: 6px 12.2px 6px;
  vertical-align: text-top;
}


.form_page.confirm #form_area form .label_g {
  width: 44.5%;
  margin-bottom: 0;
}

.form_page.confirm #form_area form .label_g .label {
  width: 100%;
}

.form_page.confirm #form_area .label_g .link_btn {
  display: none;
}

.form_page.confirm #form_area .item_radio {
  background-color: transparent;
  border-radius: 0;
  min-height: auto;
  padding: 0;
}

.form_page.confirm #form_area .item_checkbox {
  margin: 0;
}

.form_page.confirm #form_area .attention_g {
  display: none;
}


/*END　formパーツ*/

/*END　フォームデフォルトCSS*/


/*------------------------------------------------------------
10.order_done　ベーシック・カスタム・サブスクプラン専用　完了画面
-------------------------------------------------------------*/

/*完了画面デフォルトCSS*/

.form_page.done .title_area {
  margin: 100px auto 99px;
}

.form_page.done .complete_area {
  background: #E5E9E9;
  padding: 97.5px 0 71px;
  margin-bottom: 197px;
}

.form_page.done .complete_area .contents_in {
  max-width: 598px;
}

.form_page.done .complete_area h2 {
  color: #02405A;
  font-size: 17px;
  font-weight: 700;
  line-height: 25px;
  letter-spacing: 0.06em;
  text-align: center;
  margin: 0 auto 37px;
}

.form_page.done .complete_area p {
  font-size: 15px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0.08em;
}

.form_page.done .complete_area a {
  color: #02405A;
  text-decoration: underline;
  transition: all 0.3s;
}

.form_page.done .complete_area a:hover {
  opacity: 0.8;
}



/*END　完了画面デフォルトCSS*/

/*---------------------------------------------------
11.custommade　オーダーメイドプラン専用　注文フォーム
----------------------------------------------------*/


#custommade.form_page #form_area .btn_other {
  max-width: 416px;
  margin: 0 auto 100px;
}

#custommade.form_page .title_area .arch {
  margin-bottom: 64px;
}

#custommade.form_page #form_area {
  padding: 79px 0 180px;
}


/*-----------------------------------------------------
12.custommade_confirm　オーダーメイドプラン専用　確認画面
------------------------------------------------------*/


#custommade_confirm.form_page.confirm .title_area .arch {
  margin-bottom: 70px;
}

/*--------------------------------------------------
13.custommade_done　オーダーメイドプラン専用　完了画面
---------------------------------------------------*/

/*-------------------------------
14.contact　お問い合わせフォーム
--------------------------------*/

#contact.form_page .title_area {
  margin: 100px auto 90px;
}

#contact.form_page .title_g .sub_title {
  font-size: 16px;
}

#contact.form_page .title_area .arch {
  padding-bottom: 42px;
  margin-bottom: 28px;
}

#contact.form_page #form_area {
  padding: 79px 0 116px;
}

#contact.form_page #form_area .label .note_text {
  display: inline-block;
  font-size: 13px;
  line-height: 32px;
  margin-left: 10px;
}

#contact.form_page #form_area .item_radio {
  background-color: transparent;
  border-radius: 0;
  font-size: 15px;
  font-weight: 700;
  min-height: auto;
  padding: 10px 0 0;
}

#contact.form_page #form_area .item_radio label span {
  font-weight: 700;
  margin-right: 55px;
}

#contact.form_page #form_area .label .text_small {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  line-height: 32px;
  margin-left: 2px;
}

#contact.form_page #form_area .attention_g {
  max-width: 535px;
}

#contact.form_page #form_area .mw_wp_form .horizontal-item+.horizontal-item {
  margin-left: 0;
}


/*---------------------------------------
15.contact_confirm　お問い合わせ　確認画面
----------------------------------------*/

#contact_confirm.form_page .title_area {
  margin: 100px auto 90px;
}

#contact_confirm.form_page .title_g .sub_title {
  font-size: 16px;
}

#contact_confirm.form_page .title_area .arch {
  padding-bottom: 42px;
  margin-bottom: 28px;
}

#contact_confirm.form_page #form_area .confirm_area p {
  letter-spacing: 0.01em;
}

#contact_confirm.form_page #form_area .label .note_text {
  display: none;
}

#contact_confirm.form_page #form_area .label .text_small {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  line-height: 32px;
  letter-spacing: 0.05em;
  margin-left: 2px;
}

#contact_confirm.form_page #form_area .info_g {
  padding-bottom: 56px;
}

/*-------------------------------------
16.contact_done　お問い合わせ　完了画面
--------------------------------------*/

#contact_done.form_page .title_area {
  margin: 100px auto 99px;
}

#contact_done.form_page .title_g .sub_title {
  font-size: 16px;
}

#contact_done.form_page .title_area .arch {
  padding-bottom: 42px;
  margin-bottom: 28px;
}

#contact_done.form_page.done .complete_area .contents_in {
  max-width: 580px;
}

#contact_done.form_page.done .complete_area p {
  letter-spacing: 0.04em;
}

#contact_done.form_page.done .complete_area {
  padding: 97.5px 0 90px;
}