@charset "UTF-8";
/* CSS Document */

/*
100.お問い合わせ・ご相談
101.サンクスページ
110.注目・人気商品＿一覧
111.注目・人気商品＿個別
120.施工事例＿一覧
121.施工事例＿カテゴリ一覧
122.施工事例＿個別
130.窓辺の日記帳＿一覧
131.窓辺の日記帳＿カテゴリ一覧
132.窓辺の日記帳＿個別
140.プライバシーポリシー
150.404エラー
*/

/*
100.お問い合わせ・ご相談
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	#contact {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/

	/*コンテンツ*/
	#contact .con {
		position: relative;
		width: 100%;
		height: auto;
	}
	
  #contact .con .catch {
    position: relative;
    width: 100%;
    height: auto;
    padding: 170px 0 0 0;
    color: #1F3661;
  }

  #contact .con .catch h2 {
    position: relative;
    display: table;
    margin: 0 auto 0 auto;
    padding: 0 70px 0 70px;
    font-size: 36px;
    font-weight: 700;
    letter-spacing: 5px;
    line-height: 36px;
    text-align: center;
    color: #364D78;
  }

  #contact .con .catch h2::before,
  #contact .con .catch h2::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 50px;
    height: 60px;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }

  #contact .con .catch h2::before {
    left: 0;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_catch_icon01.png);
  }

  #contact .con .catch h2::after {
    right: 0;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_catch_icon02.png);
  }

  #contact .con .catch p.catch_p {
    margin: 35px auto 140px auto;
    text-align: center;
  }

 #contact .con .catch .text {
    position: relative;
    width: 1000px;
    height: auto;
    margin: 0 auto;
    padding: 0 90px 55px 90px;
    border-radius: 16px;
    background: #E2E7EC;
    box-sizing: border-box;
  }

  #contact .con .catch .text::before {
    content: "";
    position: absolute;
    top: -82px;
    left: 50%;
	  transform: translateY(0) translateX(-50%);
	  width: 570px;
	  height: 290px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/contact_catch_haikei_pc.png);
	  background-size: 100% 100%;
	  background-repeat: no-repeat;
	  background-position: center;
  }

  #contact .con .catch .text h3 {
    position: relative;
    z-index: 1;
    margin: 0 auto 35px auto;
    padding-top: 0;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 40px;
    text-align: center;
    color: #1F3661;
  }

  #contact .con .catch .text .ptn {
    position: relative;
    display: inline-block;
    width: 380px;
    height: auto;
    margin: 0 auto 30px auto;
    padding-top: 35px;
    vertical-align: top;
    box-sizing: border-box;
  }

  #contact .con .catch .text .ptn::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 26px;
    height: 26px;
    border: 1px solid #1F3661;
    border-radius: 50%;
    transform: translateX(-50%);
    box-sizing: border-box;
  }

  #contact .con .catch .text .ptn::after {
    content: "";
    position: absolute;
    top: 8px;
    left: 50%;
    width: 10px;
    height: 6px;
    border-left: 2px solid #1F3661;
    border-bottom: 2px solid #1F3661;
    transform: translateX(-50%) rotate(-45deg);
  }

  #contact .con .catch .text .ptn h4 {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 28px;
    text-align: center;
    color: #1F3661;
  }
	
	/*アンカーボタン*/
	#contact .con .btn {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
		width: 1280px;
		height: auto;
		margin: 60px auto 90px auto;
	}

	#contact .con .btn a {
		display: block;
		position: relative;
		width: 310px;
		height: auto;
		padding: 15px 20px 35px 0;
		font-size: 18px;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: right;
		border-radius: 100px;
		box-sizing: border-box;
		transition: 0.4s;
	}

	#contact .con .btn a::before {
		content: "";
		position: absolute;
		top: 15px;
		left: 30px;
		width: 22px;
		height: 22px;
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
		transition: 0.4s;
	}

	#contact .con .btn a::after {
		content: "";
		position: absolute;
		bottom: 10px;
		left: 50%;
		transform: translateX(-50%);
		width: 10px;
		height: 16px;
		background-image: url(/wp-content/themes/cf_theme/images/post/down_white.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
		transition: 0.4s;
	}
	
	/*電話でのお問い合わせ*/
	#contact .con .btn a:nth-child(1) {
		padding-right: 40px;
		color: #fff;
		background: #5169A8;
		border: solid 2px #5169A8;
	}

	#contact .con .btn a:nth-child(1)::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/con_tel_white.png);
	}
	
	#contact .con .btn a:nth-child(1):hover {
		color: #5169A8;
		background: #fff;
		border: solid 2px #5169A8;
	}
	
	#contact .con .btn a:nth-child(1):hover::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/con_tel_blue.png);
	}
	
	#contact .con .btn a:nth-child(1):hover::after {
		background-image: url(/wp-content/themes/cf_theme/images/post/down_lblue.png);
	}

	/*LINEでお問い合わせ*/
	#contact .con .btn a:nth-child(2) {
		padding-right: 40px;
		color: #fff;
		background: #06C755;
		border: solid 2px #06C755;
	}

	#contact .con .btn a:nth-child(2)::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/line_white.png);
	}
	
	#contact .con .btn a:nth-child(2):hover {
		color: #06C755;
		background: #fff;
		border: solid 2px #06C755;
	}
	
	#contact .con .btn a:nth-child(2):hover::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/line_green.png);
	}
	
	#contact .con .btn a:nth-child(2):hover::after {
		background-image: url(/wp-content/themes/cf_theme/images/post/down_green.png);
	}
	
	/*オンラインでのお問い合わせ*/
	#contact .con .btn a:nth-child(3) {
		color: #fff;
		background: #F79513;
		border: solid 2px #F79513;
	}

	#contact .con .btn a:nth-child(3)::before {
		left: 15px;
		background-image: url(/wp-content/themes/cf_theme/images/post/online_white.png);
	}
	
	#contact .con .btn a:nth-child(3):hover {
		color: #F79513;
		background: #fff;
		border: solid 2px #F79513;
	}
	
	#contact .con .btn a:nth-child(3):hover::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/online_orange.png);
	}
	
	#contact .con .btn a:nth-child(3):hover::after {
		background-image: url(/wp-content/themes/cf_theme/images/post/down_orange.png);
	}

	/*フォームでのお問い合わせ*/
	#contact .con .btn a:nth-child(4) {
		color: #fff;
		background: #364D78;
		border: solid 2px #364D78;
	}

	#contact .con .btn a:nth-child(4)::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/footer_mail_white2.png);
	}
	
	#contact .con .btn a:nth-child(4):hover {
		color: #364D78;
		background: #fff;
		border: solid 2px #364D78;
	}
	
	#contact .con .btn a:nth-child(4):hover::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/footer_mail_blue2.png);
	}
	
	#contact .con .btn a:nth-child(4):hover::after {
		background-image: url(/wp-content/themes/cf_theme/images/post/down_dblue.png);
	}
	
	/*電話でのお問い合わせ*/
  #contact .con #tel {
    position: relative;
    width: 100%;
    height: auto;
   margin: 0 auto 90px auto;
  }
	
	/*共通 見出し*/
	.contact_subtitle {
		pointer-events: stroke;
		width: 100%;
		height: auto;
	}
	
	.contact_subtitle h2 {
		font-size: 36px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 36px;
		text-align: center;
		color: #4C639E;
	}
	
	.contact_subtitle h2 font {
		display: table;
		position: relative;
		margin: 0 auto 20px auto;
		padding: 0 25px 0 25px;
		font-size: 14px;
		font-family: "Poppins", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 14px;
		text-align: center;
		color: #4C639E;
	}
	
	.contact_subtitle h2 font::before,
	.contact_subtitle h2 font::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%) translateX(0);
		width: 15px;
		height: 15px;
		background-image: url(/wp-content/themes/cf_theme/images/post/star.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}

	.contact_subtitle h2 font::before {
		left: 0;
	}

	.contact_subtitle h2 font::after {
		right: 0;
	}

  #contact .con #tel h3 {
    margin: 40px auto 30px auto;
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 26px;
    text-align: center;
    color: #1F3661;
  }

  #contact .con #tel a {
    display: table;
    position: relative;
    margin: 0 auto 0 auto;
	  padding: 0 0 0 60px;
    padding-left: 55px;
    font-size: 50px;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    letter-spacing: 5px;
    line-height: 50px;
    text-align: center;
    color: #1F3661;
    text-decoration: none;
  }

  #contact .con #tel a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
	  transform: translateY(-50%) translateX(0);
    width: 40px;
	  height: 40px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/con_tel_blue.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }

  #contact .con #tel a img {
    display: none;
  }

  #contact .con #tel p {
    margin: 20px auto 0 auto;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 16px;
    text-align: center;
    color: #1F3661;
  }
	
	/*LINEでのお問い合わせ*/
  #contact .con #line {
    position: relative;
    width: 100%;
    height: auto;
    padding: 110px 0 90px 0;
  }

  #contact .con #line::before {
    content: "";
	  z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_backimg01_pc.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }
	
	#contact .con #line .contact_subtitle h2,
	#contact .con #line .contact_subtitle h2 font {
		color: #fff;
	}

  #contact .con #line h3 {
    margin: 40px auto 50px auto;
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 26px;
    text-align: center;
    color: #fff;
  }

  #contact .con #line .step {
    position: relative;
    width: 930px;
    height: auto;
    margin: 0 auto 50px auto;
    padding-left: 120px;
    box-sizing: border-box;
  }

  #contact .con #line .step:last-child {
    margin-bottom: 0;
  }

  #contact .con #line .step > font {
    position: absolute;
    top: -25px;
    left: 0;
    width: 90px;
    height: 90px;
    padding-top: 22px;
    border: 1px solid #fff;
    border-radius: 50%;
    box-sizing: border-box;
    font-size: 12px;
	  font-family: "Poppins", sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 12px;
    text-align: center;
    color: #fff;
  }

  #contact .con #line .step > font big {
    display: block;
    margin-top: 8px;
    font-size: 28px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 28px;
  }

  #contact .con #line .step h4 {
    margin: 0 auto 24px 0;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 34px;
    text-align: left;
    color: #fff;
  }

  #contact .con #line .step p {
    margin: 0 auto 0 auto;
    color: #fff;
  }

  #contact .con #line .step .img {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    position: relative;
    width: 100%;
    height: auto;
	  margin: 20px auto 0 auto;
  }

  #contact .con #line .step .img img {
    display: block;
    position: relative;
    height: auto;
  }

  #contact .con #line .step .img img.img01 {
    width: 325px;
    margin: 0 50px 0 0;
  }

  #contact .con #line .step .img img.img02 {
    width: 130px;
  }

  #contact .con #line .step .img img.img03 {
    width: 200px;
    margin: 0 auto 0 0;
  }
	
	#contact .con #line .step .img a {
		transition: 0.3s;
	}
	
	#contact .con #line .step .img a:hover {
		opacity: 0.6;
	}
	
	/*オンラインでのご相談*/
  #contact .con #online {
    position: relative;
    width: 100%;
    height: auto;
    margin: 90px auto 90px auto;
  }

  #contact .con #online h3 {
    margin: 50px auto 30px auto;
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 26px;
    text-align: center;
    color: #1F3661;
  }

  #contact .con #online p.online_p {
    margin: 0 auto 60px auto;
    text-align: center;
  }

  #contact .con #online .text {
    position: relative;
    width: 760px;
    height: auto;
    margin: 0 auto 40px auto;
    padding: 50px 100px 50px 100px;
    border-radius: 20px;
    background: #F2F2F2;
    box-sizing: border-box;
  }

  #contact .con #online .text h4 {
    position: absolute;
    top: -12px;
    left: 50%;
	  transform: translateX(-50%);
    padding: 0 25px 0 25px;
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 24px;
    text-align: center;
    color: #1F3661;
    background: transparent;
    white-space: nowrap;
  }
	
	#contact .con #online .text h4::before,
	#contact .con #online .text h4::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%) translateX(0);
		width: 10px;
		height: 10px;
		background: #1F3661;
		border-radius: 150px;
	}
	
	#contact .con #online .text h4::before {
		left: 0;
	}
	
	#contact .con #online .text h4::after {
		right: 0;
	}

  #contact .con #online .text p {
    position: relative;
    margin: 0 auto 18px auto;
    padding-left: 32px;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 20px;
    text-align: left;
    color: #1F3661;
  }

  #contact .con #online .text p:last-child {
    margin-bottom: 0;
  }

  #contact .con #online .text p::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #F49517;
    border-radius: 50%;
    box-sizing: border-box;
  }

  #contact .con #online .text p::after {
    content: "";
    position: absolute;
    top: 8px;
    left: 6px;
    width: 8px;
    height: 5px;
    border-left: 2px solid #F49517;
    border-bottom: 2px solid #F49517;
    transform: rotate(-45deg);
  }

  #contact .con #online a {
    display: table;
    position: relative;
    width: 430px;
    height: auto;
    margin: 0 auto;
    padding: 18px 20px 38px 0;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 18px;
    text-align: right;
    color: #fff;
	  background: #F49517;
	  border: solid 2px #F79513;
	  border-radius: 100px;
	  box-sizing: border-box;
    transition: 0.4s;
  }

  #contact .con #online a::before {
    content: "";
    position: absolute;
    top: 17px;
    left: 36px;
	  width: 22px;
	  height: 22px;
    background-image: url(/wp-content/themes/cf_theme/images/post/online_white.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	  transition: 0.4s;
  }

  #contact .con #online a::after {
    content: "";
    position: absolute;
	  bottom: 10px;
    left: 50%;
	  transform: translateX(-50%);
	  width: 10px;
	  height: 16px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/down_white.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	  transition: 0.4s;
  }
	
	#contact .con #online a:hover {
		color: #F79513;
		background: #fff;
		border: solid 2px #F79513;
	}
	
	#contact .con #online a:hover::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/online_orange.png);
	}
	
	#contact .con #online a:hover::after {
		background-image: url(/wp-content/themes/cf_theme/images/post/down_orange.png);
	}
	
	/*フォームでのお問い合わせ*/
  #contact .con #form {
    position: relative;
    width: 100%;
    height: auto;
    padding: 110px 0 95px 0;
  }

  #contact .con #form::before {
    content: "";
	  z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_form_backimg.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }
	
  #contact .con #form .text {
    position: relative;
    width: 650px;
    height: auto;
    margin: 40px auto 60px auto;
  }

  #contact .con #form .text p {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 30px;
    text-align: left;
    color: #1F3661;
  }

  #contact .con #form .text p.indent {
    text-indent: -1em;
    padding-left: 1em;
  }

  /*CF7*/
  .cf7 {
    position: relative;
    width: 1100px;
    height: auto;
    margin: 0 auto;
    padding: 70px 100px 70px 100px;
    border-radius: 60px;
    background: #fff;
    box-sizing: border-box;
  }

  .cf7 table {
    width: 100%;
    border-collapse: collapse;
  }

  .cf7 table tr th {
    width: 300px;
    padding: 18px 0 0 0;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 18px;
    text-align: left;
    vertical-align: top;
    color: #1F3661;
  }
	
	.cf7 table tr th p {
		font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 18px;
    text-align: left;
		color: #1F3661;
	}
	
	.cf7 table tr th span {
		position: relative;
		margin-left: 40px;
    margin-left: 22px;
    padding: 5px 12px;
    border-radius: 5px;
    background: #4C639E;
    font-size: 16px;
    font-weight: 700;
    line-height: 16px;
    color: #fff;
	}
	
	.cf7 table tr:last-of-type th p {
		line-height: 28px;
	}
	
	.cf7 table tr:last-of-type th span {
		top: -18px;
	}

  .cf7 table tr td {
    width: 600px;
    padding: 0 0 30px 0;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 26px;
    text-align: left;
    color: #1F3661;
  }
	
	.cf7 table tr td p {
		font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 26px;
    text-align: left;
    color: #1F3661;
	}
	
	.cf7 table tr:last-of-type td {
		padding-top: 25px;
	}
	
	/*入力欄*/
	::placeholder {
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		color: #96A2B7;
	}
	
	select[name="contact_select"],
	input[name="contact_select01_day01"],
	input[name="contact_select01_day02"],
	input[name="contact_select01_day03"],
	input[name="contact_select01_time01"],
	input[name="contact_select01_time02"],
	input[name="contact_select01_time03"],
	textarea[name="contact_other"],
	input[name="contact_name"],
	input[name="contact_email"],
	input[name="contact_tel"],
	input[name="zip"],
	input[name="pref"],
	input[name="addr"],
	textarea[name="contact_message"] {
		padding: 20px 27px;
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		line-height: 16px;
		color: #1F3661;
		border-radius: 8px;
		border: none;
		background: #F2F2F2;
		box-sizing: border-box;
	}
	
	select[name="contact_select"] {
		position: relative;
		width: 100%;
		height: 63px;
	}
	
	.wpcf7-form-control-wrap[data-name="contact_select"] {
		position: relative;
		display: block;
	}

	.wpcf7-form-control-wrap[data-name="contact_select"] select {
		appearance: none!important;
		-webkit-appearance: none!important;
		width: 100%;
		padding-right: 60px;
		background-image: url("/wp-content/themes/cf_theme/images/post/contact_down_icon.png");
		background-repeat: no-repeat;
		background-position: right 28px center;
		background-size: 13px auto;
	}
	
	.cf7 table tr td .select01 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	.cf7 table tr td .select01 .kibou {
		position: relative;
		width: 100%;
		height: auto;
		margin: 10px auto 0 auto;
	}
	
	.cf7 table tr td .select01 .kibou font {
		display: inline-block;
	}
	
	.cf7 table tr td .select02 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	.cf7 table tr td .select01 h4,
	.cf7 table tr td .select02 h4 {
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		align-content: 16px;
	}
	
	input[name="contact_select01_day01"],
	input[name="contact_select01_day02"],
	input[name="contact_select01_day03"] {
		width: 210px;
		margin-left: 25px;
		margin-right: 10px;
	}
	
	input[name="contact_select01_time01"],
	input[name="contact_select01_time02"],
	input[name="contact_select01_time03"] {
		width: 210px;
	}
	
	textarea[name="contact_other"] {
		width: 100%;
		height: 200px;
		margin-top: 10px;
	}
	
	input[name="contact_name"] {
		width: 100%;
	}
	
	input[name="contact_email"] {
		width: 100%;
	}
	
	input[name="contact_tel"] {
		width: 200px;
	}
	
	input[name="zip"] {
		width: 200px;
		margin-left: 10px;
	}
	
	input[name="pref"] {
		width: 100%;
		margin: 10px auto 10px auto;
	}
	
	input[name="addr"] {
		width: 100%;
	}
	
	textarea[name="contact_message"] {
		width: 100%;
		height: 280px;
		margin-top: 20px;
	}

  #contact .con #form .wpcf7 select {
    appearance: auto;
	}

  #contact .con #form .wpcf7 input[type="file"] {
    width: 100%;
    padding: 80px 20px;
    border: 1px dashed #9DACC6;
    border-radius: 10px;
    background: #fff;
    box-sizing: border-box;
    color: #1F3661;
  }
	
	#contact .con #form .codedropz-upload-container {
		width: 100%;
		padding: 70px 0 40px 0;
		border-radius: 10px;
		background: #fff;
		box-sizing: border-box;
		color: #1F3661;
	}
	
	#contact .con #form .codedropz-upload-container::after {
		content: "";
		position: absolute;
		top: 35px;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		width: 30px;
		height: 30px;
		background-image: url(/wp-content/themes/cf_theme/images/post/file_icon.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}

  #contact .con #form .wpcf7 input[type="checkbox"] {
    width: 16px;
    height: 16px;
    margin: 0 10px 0 0;
    vertical-align: middle;
  }

 .cf7 table tr td a {
    color: #1F3661;
  }
	
	.cf7 table tr td a:hover {
		text-decoration: underline;
	}
	
	.cf7 input[type="submit"] {
		display: block;
    width: 350px;
    height: auto;
    margin: 30px auto 0 auto;
    padding: 25px 0 25px 0;;
    border: solid 2px #F49517;
    border-radius: 100px;
    background: #F49517;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 18px;
    text-align: center;
    color: #fff;
    cursor: pointer;
		box-sizing: border-box;
		transition: 0.4s;
	}
	
	.cf7 input[type="submit"]:hover {
		color: #F49517;
		background: #fff;
		border: solid 2px #F49517;
	}
	
	.wpcf7 form .wpcf7-response-output {
		width: 1100px;
		margin: 40px auto 0 auto!important;
		box-sizing: border-box;
	}
 	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	#contact {
		position: relative;
		width: 100%;
		height: auto;
	}
	
  #contact .con .catch {
    position: relative;
    width: 100%;
    height: auto;
    padding: 160px 0 0 0;
  }

  #contact .con .catch h2 {
    position: relative;
    display: table;
    margin: 0 auto 0 auto;
    padding: 0 40px 0 40px;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 30px;
    text-align: center;
    color: #364D78;
  }

  #contact .con .catch h2::before,
  #contact .con .catch h2::after {
    content: "";
    position: absolute;
    top: 60%;
    width: 27px;
    height: 32px;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    transform: translateY(-50%);
  }

  #contact .con .catch h2::before {
    left: 0;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_catch_icon01.png);
  }

  #contact .con .catch h2::after {
    right: 0;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_catch_icon02.png);
  }

  #contact .con .catch p.catch_p {
	  width: 340px;
    margin: 30px auto 80px auto;
  }

  #contact .con .catch .text {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0 0 45px 0;
    border-radius: 10px;
    background: #E2E7EC;
    box-sizing: border-box;
  }

  #contact .con .catch .text::before {
    content: "";
    position: absolute;
    top: -45px;
    left: 50%;
    transform: translateY(0) translateX(-50%);
	  width: 280px;
	  height: 145px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/contact_catch_haikei_smp.png);
	  background-size: 100% 100%;
	  background-repeat: no-repeat;
	  background-position: center;
  }

  #contact .con .catch .text h3 {
    position: relative;
    z-index: 1;
    margin: 0 auto 20px auto;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 28px;
    text-align: center;
    color: #1F3661;
  }

  #contact .con .catch .text .ptn {
    position: relative;
    width: 300px;
    height: auto;
    margin: 0 auto 18px auto;
    padding-left: 22px;
    box-sizing: border-box;
  }

  #contact .con .catch .text .ptn::before {
    content: "";
    position: absolute;
    top: 5px;
    left: -5px;
    width: 21px;
    height: 21px;
    border: 1px solid #1F3661;
    border-radius: 50%;
    box-sizing: border-box;
  }

  #contact .con .catch .text .ptn::after {
    content: "";
    position: absolute;
    top: 11px;
    left: 1px;
    width: 8px;
    height: 5px;
    border-left: 2px solid #1F3661;
    border-bottom: 2px solid #1F3661;
    transform: rotate(-45deg);
  }

  #contact .con .catch .text .ptn h4 {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 24px;
    text-align: left;
    color: #1F3661;
	}
	
	/*アンカーボタン*/
  #contact .con .btn {
    position: relative;
    width: 300px;
    height: auto;
    margin: 45px auto 0 auto;
  }
	
	#contact .con .btn a {
    display: block;
    position: relative;
    width: 100%;
    height: auto;
		margin: 0 auto 15px auto;
    padding: 15px 0 30px 0;
    border-radius: 100px;
    box-sizing: border-box;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 15px;
    text-align: center;
    color: #fff;
  }

  #contact .con .btn a::before {
	  content: "";
    position: absolute;
    top: 15px;
    left: 40px;
	  width: 16px;
	  height: 16px;
	  background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }

  #contact .con .btn a::after {
    content: "";
    position: absolute;
	  bottom: 6px;
    left: 50%;
	  transform: translateX(-50%);
	  width: 8px;
	  height: 13px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/down_white.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }

  #contact .con .btn a:nth-child(1) {
    background: #5169A8;
  }

  #contact .con .btn a:nth-child(1)::before {
    background-image: url(/wp-content/themes/cf_theme/images/post/con_tel_white.png);
  }

  #contact .con .btn a:nth-child(2) {
    background: #06C755;
  }

  #contact .con .btn a:nth-child(2)::before {
    background-image: url(/wp-content/themes/cf_theme/images/post/line_white.png);
  }

  #contact .con .btn a:nth-child(3) {
    background: #F79513;
  }

  #contact .con .btn a:nth-child(3)::before {
	  left: 22px;
    background-image: url(/wp-content/themes/cf_theme/images/post/online_white.png);
  }

  #contact .con .btn a:nth-child(4) {
    background: #364D78;
  }

  #contact .con .btn a:nth-child(4)::before {
	  left: 22px;
    background-image: url(/wp-content/themes/cf_theme/images/post/footer_mail_white2.png);
  }
	
	/*電話でのお問い合わせ*/
  #contact .con #tel {
    position: relative;
    width: 100%;
    height: auto;
    margin: 45px auto 45px auto;
  }

  /*共通 見出し*/
	.contact_subtitle {
		pointer-events: stroke;
		width: 100%;
		height: auto;
	}
	
	.contact_subtitle h2 {
		font-size: 20px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 20px;
		text-align: center;
		color: #4C639E;
	}
	
	.contact_subtitle h2 font {
		display: table;
		position: relative;
		margin: 0 auto 10px auto;
		padding: 0 15px 0 15px;
		font-size: 13px;
		font-family: "Poppins", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 13px;
		text-align: center;
		color: #4C639E;
	}
	
	.contact_subtitle h2 font::before,
	.contact_subtitle h2 font::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%) translateX(0);
		width: 12px;
		height: 12px;
		background-image: url(/wp-content/themes/cf_theme/images/post/star.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}

	.contact_subtitle h2 font::before {
		left: 0;
	}

	.contact_subtitle h2 font::after {
		right: 0;
	}

  #contact .con #tel h3 {
    margin: 20px auto 18px auto;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 16px;
    text-align: center;
    color: #1F3661;
  }

  #contact .con #tel a {
    display: table;
    position: relative;
    margin: 0 auto 0 auto;
    padding-left: 32px;
    font-size: 30px;
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    letter-spacing: 3px;
    line-height: 30px;
    text-align: center;
    color: #1F3661;
    text-decoration: none;
  }

  #contact .con #tel a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
	  transform: translateY(-50%) translateX(0);
    width: 25px;
	  height: 25px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/con_tel_blue.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }

  #contact .con #tel p {
    margin: 10px auto 0 auto;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 14px;
    text-align: center;
    color: #1F3661;
  }
	
	/*LINEでのお問い合わせ*/
  #contact .con #line {
    position: relative;
    width: 100%;
    height: auto;
    padding: 55px 0 45px 0;
  }

  #contact .con #line::before {
    content: "";
	  z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_backimg01_smp.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }
	
	#contact .con #line .contact_subtitle h2,
	#contact .con #line .contact_subtitle h2 font {
		color: #fff;
	}

  #contact .con #line h3 {
    margin: 25px auto 45px auto;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 27px;
    text-align: center;
    color: #fff;
  }

  #contact .con #line .step {
    position: relative;
    width: 375px;
    height: auto;
    margin: 0 auto 30px auto;
    padding-left: 70px;
    box-sizing: border-box;
  }

  #contact .con #line .step:last-child {
    margin-bottom: 0;
  }

  #contact .con #line .step > font {
    position: absolute;
    top: -18px;
    left: 0;
    width: 60px;
    height: 60px;
    padding-top: 15px;
    border: 1px solid #fff;
    border-radius: 50%;
    box-sizing: border-box;
    font-size: 10px;
	  font-family: "Poppins", sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 10px;
    text-align: center;
    color: #fff;
  }

  #contact .con #line .step > font big {
    display: block;
    margin-top: 4px;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 19px;
  }

  #contact .con #line .step h4 {
    margin: 0 auto 15px 0;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 26px;
    text-align: left;
    color: #fff;
  }

  #contact .con #line .step p {
    color: #fff;
  }

  #contact .con #line .step .img {
    position: relative;
    width: 100%;
    height: auto;
	  margin: 20px auto 0 auto;
  }

  #contact .con #line .step .img img {
    display: block;
    position: relative;
    height: auto;
  }

  #contact .con #line .step .img img.img01 {
    width: 280px;
    margin: 0 auto 15px 0;
  }

  #contact .con #line .step .img img.img02 {
    width: 125px;
	  margin: 0 auto 0 0;
  }

  #contact .con #line .step .img img.img03 {
    width: 240px;
    margin: 0 auto 0 0;
  }
	
	/*オンラインでのご相談*/
  #contact .con #online {
    position: relative;
    width: 100%;
    height: auto;
    margin: 45px auto 45px auto;
  }

  #contact .con #online h3 {
    margin: 25px auto 20px auto;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 17px;
    text-align: center;
    color: #1F3661;
  }

  #contact .con #online p.online_p {
	  width: 340px;
    margin: 0 auto 45px auto;
    text-align: left;
  }

  #contact .con #online .text {
    position: relative;
    width: 375px;
    height: auto;
    margin: 0 auto 30px auto;
    padding: 30px 35px 30px 35px;
    border-radius: 10px;
    background: #F2F2F2;
    box-sizing: border-box;
  }

  #contact .con #online .text h4 {
    position: absolute;
    top: -9px;
    left: 50%;
	  transform: translateX(-50%);
    padding: 0 15px 0 15px;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 17px;
    text-align: center;
    color: #1F3661;
    background: transparent;
    white-space: nowrap;
  }
	
	#contact .con #online .text h4::before,
	#contact .con #online .text h4::after {
		content: "";
		position: absolute;
		top: 50%;
		transform: translateY(-50%) translateX(0);
		width: 8px;
		height: 8px;
		background: #1F3661;
		border-radius: 150px;
	}
	
	#contact .con #online .text h4::before {
		left: 0;
	}
	
	#contact .con #online .text h4::after {
		right: 0;
	}

  #contact .con #online .text p {
    position: relative;
    margin: 0 auto 6px auto;
    padding-left: 20px;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 22px;
    text-align: left;
    color: #1F3661;
  }

  #contact .con #online .text p:last-child {
    margin-bottom: 0;
  }

  #contact .con #online .text p::before {
    content: "";
    position: absolute;
    top: 2px;
    left: -5px;
    width: 16px;
    height: 16px;
    border: 1px solid #F49517;
    border-radius: 50%;
    box-sizing: border-box;
  }

  #contact .con #online .text p::after {
    content: "";
    position: absolute;
    top: 6px;
    left: 0;
    width: 6px;
    height: 4px;
    border-left: 2px solid #F49517;
    border-bottom: 2px solid #F49517;
    transform: rotate(-45deg);
  }

  #contact .con #online a {
    display: table;
    position: relative;
    width: 360px;
    height: auto;
    margin: 0 auto;
    padding: 13px 0 28px 25px;
    border-radius: 100px;
    box-sizing: border-box;
    background: #F49517;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 15px;
    text-align: center;
    color: #fff;
  }

  #contact .con #online a::before {
    content: "";
    position: absolute;
    top: 13px;
    left: 20px;
	  width: 20px;
	  height: 20px;
    background-image: url(/wp-content/themes/cf_theme/images/post/online_white.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }

  #contact .con #online a::after {
    content: "";
    position: absolute;
	  bottom: 8px;
    left: 50%;
	  transform: translateX(-50%);
	  width: 8px;
	  height: 13px;
	  background-image: url(/wp-content/themes/cf_theme/images/post/down_white.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }
	
	/*フォームでのお問い合わせ*/
  #contact .con #form {
    position: relative;
    width: 100%;
    height: auto;
    padding: 55px 0 45px 0;
  }

  #contact .con #form::before {
    content: "";
	  z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url(/wp-content/themes/cf_theme/images/post/contact_form_backimg.png);
		background-size: 260% 100%;
		background-repeat: no-repeat;
		background-position: center;
  }

  #contact .con #form .text {
    position: relative;
    width: 340px;
    height: auto;
    margin: 30px auto 30px auto;
  }

  #contact .con #form .text p {
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 22px;
    text-align: left;
    color: #1F3661;
  }

  #contact .con #form .text p.indent {
    text-indent: -1em;
    padding-left: 1em;
  }
	
  /*CF7*/
  .cf7 {
    position: relative;
    width: 375px;
    height: auto;
    margin: 0 auto;
    padding: 30px 27px 30px 27px;
    border-radius: 30px;
    background: #fff;
    box-sizing: border-box;
  }

  .cf7 table {
    width: 100%;
    border-collapse: collapse;
  }

  .cf7 table tr th {
	  display: block;
	  position: relative;
    width: 100%;
    padding: 0 0 18px 0;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 15px;
    text-align: left;
    color: #1F3661;
  }
	
	.cf7 table tr th p {
		font-size: 15px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 15px;
    text-align: left;
    color: #1F3661;
	}
	
	.cf7 table tr th span {
		position: relative;
		margin-left: 20px;
    padding: 3px 6px;
    border-radius: 2px;
    background: #4C639E;
    font-size: 13px;
    font-weight: 700;
    line-height: 13px;
    color: #fff;
	}
	
	.cf7 table tr td {
    display: block;
	  position: relative;
    width: 100%;
    padding: 0 0 25px 0;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: 0.5px;
    line-height: 22px;
    text-align: left;
    color: #1F3661;
  }
	
	.cf7 table tr td p {
		font-size: 14px;
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 22px;
    text-align: left;
    color: #1F3661;
	}
	
	/*入力欄*/
	::placeholder {
		font-size: 15px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 15px;
		color: #96A2B7;
	}
	
	select[name="contact_select"],
	input[name="contact_select01_day01"],
	input[name="contact_select01_day02"],
	input[name="contact_select01_day03"],
	input[name="contact_select01_time01"],
	input[name="contact_select01_time02"],
	input[name="contact_select01_time03"],
	input[name="contact_name"],
	input[name="contact_email"],
	input[name="contact_tel"],
	input[name="zip"],
	input[name="pref"],
	input[name="addr"],
	textarea[name="contact_message"],
	textarea[name="contact_other"] {
		padding: 12px 10px 12px 15px;
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		line-height: 16px;
		color: #1F3661;
		border-radius: 4px;
		border: none;
		background: #F2F2F2;
		box-sizing: border-box;
	}
	
	select[name="contact_select"] {
		width: 100%;
		height: 50px;
	}
	
	.wpcf7-form-control-wrap[data-name="contact_select"] {
		position: relative;
		display: block;
	}

	.wpcf7-form-control-wrap[data-name="contact_select"] select {
		appearance: none!important;
		-webkit-appearance: none!important;
		width: 100%;
		padding-right: 50px;
		background-image: url("/wp-content/themes/cf_theme/images/post/contact_down_icon.png");
		background-repeat: no-repeat;
		background-position: right 15px center;
		background-size: 10px auto;
	}
	
	.cf7 table tr td .select01 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 25px auto 0 auto;
	}
	
	.cf7 table tr td .select01 .kibou {
		position: relative;
		width: 100%;
		height: auto;
		margin: 10px auto 0 auto;
	}
	
	.cf7 table tr td .select01 .kibou font {
		display: block;
	}
	
	.cf7 table tr td .select02 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 25px auto 0 auto;
	}
	
	.cf7 table tr td .select01 h4,
	.cf7 table tr td .select02 h4 {
		font-size: 15px;
		font-weight: 500;
		letter-spacing: 1px;
		align-content: 15px;
	}
	
	/* Safariで日付テキストが中央寄りになる対策 */
	.wpcf7 input[type="date"]::-webkit-date-and-time-value {
		text-align: left;
	}

	/* Chrome標準アイコンを消して、CSS画像に統一 */
	.wpcf7 input[type="date"]::-webkit-calendar-picker-indicator {
		opacity: 0;
		cursor: pointer;
	}
	
	input[name="contact_select01_day01"],
	input[name="contact_select01_day02"],
	input[name="contact_select01_day03"] {
		display: block;
		position: relative;
		width: 200px;
		height: 47px;
		margin: 10px auto 10px 0;
		text-align: left;
		-webkit-appearance: none;
		appearance: none;
		background-image: url("/wp-content/themes/cf_theme/images/post/contact_day_icon.png");
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 18px auto;
	}
	
	input[name="contact_select01_time01"],
	input[name="contact_select01_time02"],
	input[name="contact_select01_time03"] {
		width: 200px;
	}
	
	textarea[name="contact_other"] {
		width: 100%;
		height: 100px;
		margin-top: 10px;
	}
	
	input[name="contact_name"] {
		width: 100%;
	}
	
	input[name="contact_email"] {
		width: 100%;
	}
	
	input[name="contact_tel"] {
		width: 100%;
	}
	
	input[name="zip"] {
		width: 190px;
		margin-left: 7px;
	}
	
	input[name="pref"] {
		width: 100%;
		margin: 10px auto 10px auto;
	}
	
	input[name="addr"] {
		width: 100%;
	}
	
	textarea[name="contact_message"] {
		width: 100%;
		height: 200px;
		margin-top: 10px;
	}

  #contact .con #form .wpcf7 select {
    appearance: auto;
	}

  #contact .con #form .wpcf7 input[type="file"] {
    width: 100%;
    padding: 20px 10px;
    border: 1px dashed #9DACC6;
    border-radius: 4px;
    background: #fff;
    box-sizing: border-box;
    color: #1F3661;
  }
	
	#contact .con #form .codedropz-upload-container {
		padding: 60px 0 25px 0;
	}
	
	#contact .con #form .codedropz-upload-container::after {
		content: "";
		position: absolute;
		top: 25px;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		width: 35px;
		height: 35px;
		background-image: url(/wp-content/themes/cf_theme/images/post/file_icon.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	#contact .con #form .codedropz-upload-inner {
		font-size: 13px;
	}

  #contact .con #form .wpcf7 input[type="checkbox"] {
    width: 14px;
    height: 14px;
    margin: 0 10px 0 0;
  }

 .cf7 table tr td a {
	 font-weight: 700;
    color: #1F3661;
	 text-decoration: underline;
  }
	
	.cf7 input[type="submit"] {
		display: block;
    width: 280px;
    height: auto;
    margin: 0 auto 0 auto;
    padding: 14px 0 14px 0;;
    border: solid 1px #F49517;
    border-radius: 100px;
    background: #F49517;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 1px;
    line-height: 16px;
    text-align: center;
    color: #fff;
    cursor: pointer;
		box-sizing: border-box;
	}
	
	.wpcf7 form .wpcf7-response-output {
		width: 375px;
		margin: 25px auto 0 auto!important;
		box-sizing: border-box;
	}
	
}

/*
101.サンクスページ
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	#thanks {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#thanks .text_mv {
		padding: 100px 0 60px 0;
	}
	
	/*コンテンツ*/
	#thanks .con {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 120px auto;
	}
	
	#thanks .con p {
		margin: 0 auto 0 auto;
		text-align: center;
	}
	
	#thanks .con p a {
		color: #1F3661;
	}
	
	#thanks .con a.common_btn {
		width: 380px;
		margin: 45px auto 0 auto;
	}
 
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	#thanks {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#thanks .text_mv {
		padding: 80px 0 40px 0;
	}
	
	/*コンテンツ*/
	#thanks .con {
		position: relative;
		width: 88%;
		height: auto;
		margin: 0 auto 80px auto;
	}
	
	#thanks .con p {
		margin: 0 auto 0 auto;
		text-align: left;
	}
	
	#thanks .con p a {
		color: #1F3661;
	}
	
	#thanks .con a.common_btn {
		width: 290px;
		margin: 30px auto 0 auto;
	}

}

/*
110.注目・人気商品＿一覧
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	/*全体*/
	#pickup_l {
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 40px;
	}
	
	/*メインビジュアル*/
	#pickup_l .text_mv {
		padding: 100px 0 100px 0;
	}
	
	/*記事一覧*/
	#pickup_l .loop {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 1230px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#pickup_l .loop a {
		display: block;
		position: relative;
		width: 380px;
		height: auto;
		margin: 0 15px 50px 15px;
	}
	
	#pickup_l .loop a .img {
		position: relative;
		width: 380px;
		height: 285px;
		border-radius: 20px;
		overflow: hidden;
	}
	
	#pickup_l .loop a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 285px;
		object-fit: cover;
		object-position: center;
		transition: 0.4s;
	}
	
	#pickup_l .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	#pickup_l .loop a .text p {
		font-size: 17px;
		font-weight: 500;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#pickup_l .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 15px auto 0 0;
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: center;
		color: #1F3661;
	}
	
	#pickup_l .loop a:hover .img img {
		transform: scale(1.2);
	}
	
	#pickup_l .loop a:hover .text p {
		text-decoration-color: #1F3661;
	}
 
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*全体*/
	#pickup_l {
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 15px;
	}
	
	/*メインビジュアル*/
	#pickup_l .text_mv {
		padding: 45px 0 30px 0;
	}
	
	/*記事一覧*/
	#pickup_l .loop {
		position: relative;
		width: 300px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#pickup_l .loop a {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 30px auto;
	}
	
	#pickup_l .loop a .img {
		position: relative;
		width: 100%;
		height: 225px;
		border-radius: 10px;
		overflow: hidden;
	}
	
	#pickup_l .loop a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 225px;
		object-fit: cover;
		object-position: center;
	}
	
	#pickup_l .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 12px auto 0 auto;
	}
	
	#pickup_l .loop a .text p {
		font-size: 16px;
		font-weight: 500;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#pickup_l .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 10px auto 0 0;
		font-size: 12px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: center;
		color: #1F3661;
	}
	
}

/*
111.注目・人気商品＿個別
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	/*全体*/
	#pickup_p {
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 90px;
	}
	
	#pickup_p::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 520px;
		background-image: url(/wp-content/themes/cf_theme/images/post/pickup_haikei_pc.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	/*記事タイトル*/
	#pickup_p .title {
		position: relative;
		width: 1280px;
		height: auto;
		margin: 110px auto 0 auto;
	}
	
	/*パンくず*/
	#pickup_p .title nav {
		position: absolute;
		top: -65px;
		left: 50px;
		width: 1200px;
		height: auto;
	}
	
	#pickup_p .title nav ul {
		display: flex;
		flex-wrap: wrap;
		list-style: none;
		align-items: baseline;
	}
	
	#pickup_p .title nav ul li {
		display: inline;
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #fff;
	}
	
	#pickup_p .title nav li:not(:last-child) {
		white-space: nowrap;
		margin-bottom: 10px;
	}

	#pickup_p .title nav li:not(:last-child)::after {
		content: ">";
		margin: 0 10px 0 10px;
	}
	
	#pickup_p .title nav li:last-child {
		overflow-wrap: anywhere;
		word-break: break-all;
	}

	#pickup_p .title nav a {
		color: inherit;
		text-decoration: none;
	}

	#pickup_p .title nav a:hover {
		text-decoration: underline;
	}
	
	/*記事タイトル*/
	#pickup_p .title .text {
		position: relative;
		width: 550px;
		height: auto;
		padding-top: 20px;
		margin: 0 20px 120px auto;
	}
	
	#pickup_p .title .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 15px 0;
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #fff;
	}
	
	#pickup_p .title .text h1 {
		font-size: 32px;
		font-weight: 700;
		letter-spacing: 2px;
		line-height: 42px;
		text-align: left;
		color: #fff;
	}
	
	/*スライドショー*/	
	.pickup-gallery {
		position: absolute;
		top: 0;
		left: 0;
		width: 670px;
		height: auto;
	}

	.pickup-gallery .pickup-main-slider {
		position: relative;
		width: 620px;
		height: 465px;
		margin: 0 auto 0 auto;
		border-radius: 20px;
		overflow: hidden;
	}

	.pickup-gallery .pickup-main-slider img {
		display: block;
		position: relative;
		width: 100%;
		height: 465px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}

	.pickup-slider-arrow {
		z-index: 10;
		position: absolute;
		top: 43%;
		width: 50px;
		height: 50px;
		border: 2px solid #fff;
		border-radius: 100px;
		background: #364D78;
		color: #fff;
		font-size: 20px;
		line-height: 20px;
		cursor: pointer;
		transform: translateY(-50%);
		transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
	}
	
	.pickup-slider-arrow:hover {
		border-color: #364D78;
		background: #fff;
		color: #364D78;
	}

	.pickup-slider-prev {
		left: 0;
	}

	.pickup-slider-next {
		right: 0;
	}

	.pickup-thumb-slider {
		position: relative;
		width: 620px;
		height: auto;
		margin: 20px auto 0 auto;
	}

	.pickup-thumb-slider .swiper-slide {
		position: relative;
		width: 90px;
		height: 68px;
		margin-right: 10px;
		border-radius: 10px;
		overflow: hidden;
		background: #F2F2F2;
		cursor: pointer;
		opacity: 1;
		transition: opacity 0.3s ease;
	}

	.pickup-thumb-slider .swiper-slide-thumb-active {
		opacity: 1;
	}

	.pickup-thumb-slider img {
		display: block;
		position: relative;
		width: 100%;
		height: 68px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}

	.pickup-slider-pagination {
		display: none;
	}
	
	/*商品説明*/
	#pickup_p .title .product {
		position: relative;
		width: 550px;
		height: auto;
		margin: 0 20px 0 auto;
	}
	
	/*フリースペース*/
	#pickup_p .post {
		position: relative;
		width: 880px;
		height: auto;
		margin: 60px auto 60px auto;
	}
	
	#pickup_p .post h1,
	#pickup_p .post h2,
	#pickup_p .post h3,
	#pickup_p .post h4 {
		margin: 40px auto 20px auto;
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 34px;
		text-align: left;
		color: #1F3661;
	}
	
	/*ボタン*/
	#pickup_p a.common_btn {
		width: 420px;
		margin: 0 auto 0 auto;
	}

	#pickup_p a.common_btn::after {
		right: 70px;
	}
	
	#pickup_p a.common_btn.is-no-pickup-content {
		margin-top: 480px;
	}
	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*全体*/
	#pickup_p {
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 45px;
	}
	
	#pickup_p::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 470px;
		background-image: url(/wp-content/themes/cf_theme/images/post/pickup_haikei_smp.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	/*記事タイトル*/
	#pickup_p .title {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	/*パンくず*/
	#pickup_p .title nav {
		position: relative;
		width: 94%;
		height: auto;
		margin: 20px auto 30px auto;
	}
	
	#pickup_p .title nav ul {
		display: flex;
		flex-wrap: wrap;
		list-style: none;
		align-items: baseline;
	}
	
	#pickup_p .title nav ul li {
		display: inline;
		font-size: 13px;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 13px;
		text-align: left;
		color: #fff;
	}
	
	#pickup_p .title nav li:not(:last-child) {
		white-space: nowrap;
		margin-bottom: 8px;
	}

	#pickup_p .title nav li:not(:last-child)::after {
		content: ">";
		margin: 0 5px 0 5px;
	}
	
	#pickup_p .title nav li:last-child {
		overflow-wrap: anywhere;
		word-break: break-all;
		line-height: 26px;
	}

	#pickup_p .title nav a {
		color: inherit;
		text-decoration: none;
	}

	#pickup_p .title nav a:hover {
		text-decoration: underline;
	}
	
	/*記事タイトル*/
	#pickup_p .title .text {
		position: relative;
		width: 310px;
		height: auto;
		margin: 0 auto 30px auto;
	}
	
	#pickup_p .title .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 10px 0;
		font-size: 13px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 13px;
		text-align: left;
		color: #fff;
	}
	
	#pickup_p .title .text h1 {
		font-size: 20px;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 30px;
		text-align: left;
		color: #fff;
	}
	
	/*スライドショー*/	
	.pickup-gallery {
		position: relative;
		width: 350px;
		height: auto;
		margin: 0 auto 25px auto;
	}

	.pickup-gallery .pickup-main-slider {
		position: relative;
		width: 310px;
		height: 240px;
		margin: 0 auto 0 auto;
		border-radius: 10px;
		overflow: hidden;
	}

	.pickup-gallery .pickup-main-slider img {
		display: block;
		position: relative;
		width: 100%;
		height: 240px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}

	.pickup-slider-arrow {
		z-index: 10;
		position: absolute;
		top: 43%;
		width: 35px;
		height: 35px;
		border: 2px solid #fff;
		border-radius: 100px;
		background: #364D78;
		color: #fff;
		font-size: 16px;
		line-height: 16px;
		cursor: pointer;
		transform: translateY(-50%);
		transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
	}
	
	.pickup-slider-prev {
		left: 0;
	}

	.pickup-slider-next {
		right: 0;
	}

	.pickup-thumb-slider {
		display: none;
	}

	.pickup-slider-pagination {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
  gap: 16px;
  width: 310px;
  height: auto;
  margin: 24px auto 0 auto;
	}
	
	.pickup-slider-pagination .swiper-pagination-bullet {
		display: block;
  width: 5px;
  height: 5px;
  margin: 0 !important;
  border-radius: 50%;
  background: #DBDBDB;
  opacity: 1;
	}

	.pickup-slider-pagination .swiper-pagination-bullet-active {
		width: 10px;
		height: 10px;
		background: #4C639E;
	}
	
	/*商品説明*/
	#pickup_p .title .product {
		position: relative;
		width: 340px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	/*フリースペース*/
	#pickup_p .post {
		position: relative;
		width: 340px;
		height: auto;
		margin: 45px auto 30px auto;
	}
	
	#pickup_p .post h1,
	#pickup_p .post h2,
	#pickup_p .post h3,
	#pickup_p .post h4 {
		margin: 20px auto 15px auto;
		font-size: 17px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 27px;
		text-align: left;
		color: #1F3661;
	}
	
	/*ボタン*/
	#pickup_p a.common_btn {
		width: 300px;
		margin: 0 auto 0 auto;
	}
	
	#pickup_p a.common_btn::after {
		right: 28px;
	}
	
}

/*
120.施工事例＿一覧
121.施工事例＿カテゴリ一覧
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	/*全体*/
	#works_l {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#works_l .text_mv {
		padding: 100px 0 100px 0;
	}
	
	/*2カラム*/
	#works_l .con {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		position: relative;
		width: 1280px;
		height: auto;
		margin: 0 auto 0 auto;
		padding-bottom: 90px;
	}
	
	#works_l .con .side {
		position: relative;
		width: 250px;
		height: auto;
	}
	
	#works_l .con .main {
		position: relative;
		width: 1020px;
		height: auto;
	}
	
	/*カテゴリー*/
	#works_l .con .side .cat {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#works_l .con .side .cat h3 {
		position: relative;
		margin: 0 auto 20px 0;
		padding-left: 22px;
		font-size: 20px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 20px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_l .con .side .cat h3::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
		width: 10px;
		height: 10px;
		border-radius: 100px;
		background: #F49517;
	}
	
	#works_l .con .side .cat ul {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#works_l .con .side .cat ul li {
		list-style: none;
		position: relative;
		margin: 12px auto 0 0;
	}
	
	#works_l .con .side .cat ul li:last-of-type {
		margin-bottom: 40px;
	}
	
	#works_l .con .side .cat ul li a {
		display: block;
		position: relative;
		font-size: 15px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 15px;
		text-align: left;
		color: #A4B1CB;
		transition: 0.4s;
	}
	
	#works_l .con .side .cat ul li a font {
		position: relative;
		margin-left: 8px;
		color: #1F3661;
	}
	
	#works_l .con .side .cat ul li.is-current a {
		font-weight: 700;
		color: #1F3661;
	}
	
	#works_l .con .side .cat ul li.is-current a font {
		color: #1F3661;
		text-decoration: underline;
	}
	
	#works_l .con .side .cat ul li a:hover {
		font-weight: 700;
		color: #1F3661;
	}
	
	#works_l .con .side .cat ul li a:hover font {
		color: #1F3661;
		text-decoration: underline;
	}
	
	/*記事一覧*/
	#works_l .con .main .title {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 40px auto;
	}
	
	#works_l .con .main .title h2 {
		position: relative;
		padding: 5px 0 5px 30px;
		font-size: 28px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 28px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_l .con .main .title h2::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 10px;
		height: 100%;
		background: #364D78;
		border-radius: 10px;
	}
	
	#works_l .con .main .loop {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 1230px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#works_l .con .main .loop a {
		display: block;
		position: relative;
		width: 310px;
		height: auto;
		margin: 0 30px 30px 0;
	}
	
	#works_l .con .main .loop a .img {
		position: relative;
		width: 310px;
		height: 205px;
		border-radius: 20px;
		background: #F2F2F2;
		overflow: hidden;
	}
	
	#works_l .con .main .loop a .img img {
		display: block;
		position: relative;
		width: auto;
		height: 205px;
		margin: 0 auto 0 auto;
		object-fit: cover;
		object-position: center;
		transition: 0.4s;
	}
	
	#works_l .con .main .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	#works_l .con .main .loop a .text p {
		margin-bottom: 15px;
		font-size: 18px;
		font-weight: 500;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#works_l .con .main .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 11px 0;
		font-size: 15px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 15px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_l .con .main .loop a:hover .img img {
		transform: scale(1.2);
	}
	
	#works_l .con .main .loop a:hover .text p {
		text-decoration-color: #1F3661;
	}
	
	#works_l .con .main .pagination ul {
		position: relative;
		left: -10px;
	}
 
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*全体*/
	#works_l {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#works_l .text_mv {
		padding: 45px 0 45px 0;
	}
	
	/*2カラム*/
	#works_l .con {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
		padding-bottom: 45px;
	}
	
	#works_l .con .side {
		position: relative;
		width: 280px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#works_l .con .main {
		position: relative;
		width: 300px;
		height: auto;
		margin: 45px auto 0 auto;
	}
	
	/*カテゴリー*/
	#works_l .con .side .cat {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#works_l .con .side .cat .works-tax-works-cat02,
	#works_l .con .side .cat .works-tax-works-cat03 {
		margin-top: 15px;
	}
	
	#works_l .con .side .cat h3 {
		position: relative;
		margin: 0 auto 8px 0;
		padding-left: 18px;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_l .con .side .cat h3::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
		width: 8px;
		height: 8px;
		border-radius: 100px;
		background: #F49517;
	}

	#works_l .con .side .cat h3::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%) translateX(0);
		width: 16px;
		height: 2px;
		background: #1F3661;
		transform: translateY(-50%);
	}
	
	#works_l .con .side .cat .works-tax-list:not(.is-open) h3 span::after {
		content: "";
		position: absolute;
		top: 50%;
		right: 7px;
		width: 2px;
		height: 16px;
		background: #1F3661;
		transform: translateY(-50%);
	}
	
	#works_l .con .side .cat ul {
		position: relative;
		width: 100%;
		height: auto;
		 overflow: hidden;
    transition: max-height 0.3s ease;
	}
	
	#works_l .con .side .cat ul li {
		list-style: none;
		position: relative;
		margin: 10px auto 0 0;
	}
	
	#works_l .con .side .cat ul li:last-of-type {
		margin-bottom: 15px;
	}
	
	#works_l .con .side .cat ul li a {
		display: block;
		position: relative;
		font-size: 12px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #A4B1CB;
	}
	
	#works_l .con .side .cat ul li a font {
		position: relative;
		margin-left: 8px;
		color: #1F3661;
	}
	
	#works_l .con .side .cat ul li.is-current a {
		font-weight: 700;
		color: #1F3661;
	}
	
	#works_l .con .side .cat ul li.is-current a font {
		color: #1F3661;
		text-decoration: underline;
	}
	
	/*記事一覧*/
	#works_l .con .main .title {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 20px auto;
	}
	
	#works_l .con .main .title h2 {
		position: relative;
		padding: 3px 0 5px 15px;
		font-size: 18px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 18px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_l .con .main .title h2::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 7px;
		height: 100%;
		background: #364D78;
		border-radius: 5px;
	}
	
	#works_l .con .main .loop {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#works_l .con .main .loop a {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 30px auto;
	}
	
	#works_l .con .main .loop a .img {
		position: relative;
		width: 100%;
		height: 200px;
		border-radius: 10px;
		background: #F2F2F2;
		overflow: hidden;
	}
	
	#works_l .con .main .loop a .img img {
		display: block;
		position: relative;
		width: auto;
		height: 200px;
		margin: 0 auto 0 auto;
		object-fit: cover;
		object-position: center;
	}
	
	#works_l .con .main .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 15px auto 0 auto;
	}
	
	#works_l .con .main .loop a .text p {
		margin-bottom: 10px;
		font-size: 16px;
		font-weight: 500;
		line-height: 26px;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#works_l .con .main .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 8px 0;
		font-size: 12px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #1F3661;
	}
	
}

/*
122.施工事例＿個別
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	/*全体*/
	#works_p {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*記事タイトル*/
	#works_p .title {
		position: relative;
		width: 1280px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	nav.breadcrumb {
		position: relative;
		width: 600px;
		height: auto;
		padding-top: 40px;
		margin: 0 auto 40px 30px;
	}
	
	nav.breadcrumb ul {
		display: flex;
		flex-wrap: wrap;
		list-style: none;
		align-items: baseline;
	}
	
	.breadcrumb ul li {
		display: inline;
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #1F3661;
	}
	
	.breadcrumb li:not(:last-child) {
		white-space: nowrap;
		margin-bottom: 10px;
	}

	.breadcrumb li:not(:last-child)::after {
		content: ">";
		margin: 0 10px 0 10px;
	}
	
	.breadcrumb li:last-child {
		overflow-wrap: anywhere;
  word-break: break-all;
		line-height: 28px;
}

	.breadcrumb a {
		color: inherit;
		text-decoration: none;
	}

	.breadcrumb a:hover {
		text-decoration: underline;
	}
	
	#works_p .title h1 {
		position: relative;
		width: 600px;
		margin: 0 auto 0 30px;
		font-size: 32px;
		font-weight: 700;
		letter-spacing: 2px;
		line-height: 46px;
		text-align: left;
		color: #364D78;
	}
	
	#works_p .title .img {
		position: absolute;
		top: 0;
		right: 0;
		width: 620px;
		height: 415px;
		border-radius: 30px;
		overflow: hidden;
		background: #F2F2F2;
	}
	
	#works_p .title .img img {
		display: block;
		position: relative;
		width: auto;
		height: 415px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}
	
	#works_p .title .cat {
		position: relative;
		width: 900px;
		height: auto;
		margin: 60px auto 0 0;
		padding: 50px 0 50px 80px;
	}
	
	#works_p .title .cat::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 0;
		right: 0;
		width: 1000%;
		height: 100%;
		background: #364D78;
	}
	
	#works_p .title .cat ul {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#works_p .title .cat ul li {
		display: block;
		position: relative;
		margin-bottom: 15px;
		padding-left: 30px;
		font-size: 17px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 17px;
		text-align: left;
		color: #fff;
		list-style: none;
	}
	
	#works_p .title .cat ul li font {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
	}
	
	#works_p .title .cat ul li img {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
		width: 20px;
		height: auto;
	}
	
	/*記事内容*/
	#works_p .post {
		position: relative;
		width: 880px;
		height: auto;
		margin: 60px auto 95px auto;
	}
	
	/*本文*/
	#works_p .post .acf01 {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#works_p .post .acf01 p {
		
	}
	
	/*スライドショー*/
	#works_p .post .acf02 {
		position: relative;
		width: 770px;
		height: auto;
		margin: 60px auto 60px auto;
	}
	
	.works-gallery {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.works-gallery .works-main-slider {
		position: relative;
		width: 720px;
		height: 480px;
		margin: 0 auto 0 auto;
		border-radius: 30px;
		overflow: hidden;
		background: #F2F2F2;
	}

.works-main-slider .swiper-slide {
  aspect-ratio: 880 / 585;
}


	.works-gallery .works-main-slider img {
		display: block;
		position: relative;
		width: auto;
		height: 480px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}

	.works-slider-arrow {
		z-index: 10;
		position: absolute;
		top: 43%;
		width: auto;
		height: auto;
		padding: 12px 13px 14px 13px;
		border: 2px solid #fff;
		border-radius: 100px;
		background: #364D78;
		color: #fff;
		font-size: 20px;
		line-height: 20px;
		cursor: pointer;
		transform: translateY(-50%);
		transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
	}
	
	.works-slider-arrow:hover {
		border-color: #364D78;
		background: #fff;
		color: #364D78;
	}

	.works-slider-prev {
		left: 0;
	}

	.works-slider-next {
		right: 0;
	}

	.works-thumb-slider {
		position: relative;
		width: 720px;
		height: auto;
		margin: 20px auto 0 auto;
	}

	.works-thumb-slider .swiper-slide {
		position: relative;
		width: 100px;
		height: 70px;
		margin-right: 10px;
		border-radius: 10px;
		overflow: hidden;
		background: #F2F2F2;
		cursor: pointer;
		opacity: 0.55;
		transition: opacity 0.3s ease;
	}

	.works-thumb-slider .swiper-slide-thumb-active {
		opacity: 1;
	}

	.works-thumb-slider img {
		display: block;
		position: relative;
		width: auto;
		height: 70px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}

	.works-slider-pagination {
		display: none;
	}
	
	/*担当者コメント*/
	#works_p .post .acf03 {
		position: relative;
		width: 100%;
		height: auto;
		padding: 30px 30px 30px 30px;
		border-radius: 10px;
		background: #E2E6EB;
		box-sizing: border-box;
	}
	
	#works_p .post .acf03 h3 {
		position: relative;
		padding-left: 50px;
		margin-bottom: 20px;
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 24px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_p .post .acf03 h3 img {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 35px;
		height: auto;
	}
	
	/*フリースペース*/
	#works_p .post .acf04 {
		position: relative;
		width: 100%;
		height: auto;
		margin: 60px auto 0 auto;
	}
	
	#works_p .post .acf04 h1,
	#works_p .post .acf04 h2,
	#works_p .post .acf04 h3,
	#works_p .post .acf04 h4 {
		margin: 40px auto 20px auto;
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 34px;
		text-align: left;
		color: #1F3661;
	}
	
	/*最新の施工事例を見る*/
	#works_p .latest {
		position: relative;
		width: 100%;
		height: auto;
		padding: 120px 0 90px 0;
	}
	
	#works_p .latest::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: url(/wp-content/themes/cf_theme/images/post/works_backimg_pc.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	#works_p .latest h2 {
		font-size: 36px;
		font-weight: 700;
		letter-spacing: 2px;
		line-height: 36px;
		text-align: center;
		color: #fff;
	}
	
	#works_p .latest .loop {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 1080px;
		height: auto;
		margin: 50px auto 50px auto;
	}
	
	#works_p .latest .loop a {
		display: block;
		position: relative;
		width: 310px;
		height: auto;
		margin: 0 25px 0 25px;
	}
	
	#works_p .latest .loop  a .img {
		position: relative;
		width: 310px;
		height: 205px;
		border-radius: 20px;
		overflow: hidden;
	}
	
	#works_p .latest .loop a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 205px;
		object-fit: cover;
		object-position: center;
		transition: 0.4s;
	}
	
	#works_p .latest .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	#works_p .latest .loop a .text p {
		margin-bottom: 15px;
		font-size: 18px;
		font-weight: 500;
		color: #fff;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#works_p .latest .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 11px 0;
		font-size: 15px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 15px;
		text-align: left;
		color: #fff;
	}
	
	#works_p .latest .loop a:hover .img img {
		transform: scale(1.2);
	}
	
	#works_p .latest .loop a:hover .text p {
		text-decoration-color: #fff;
	}
	
	#works_p .latest .common_btn {
		width: 380px;
		margin: 0 auto 0 auto;
		color: #fff;
		background: #1F3661;
		border: solid 2px #fff;
	}
	
	#works_p .latest .common_btn::after {
		right: 25px;
		background-image: url(/wp-content/themes/cf_theme/images/post/right_white.png);
	}
	
	#works_p .latest .common_btn:hover {
		color: #1F3661;
		background: #fff;
		border: solid 2px #fff;
	}
	
	#works_p .latest .common_btn:hover::after {
		background-image: url(/wp-content/themes/cf_theme/images/post/right_blue.png);
	}
	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*全体*/
	#works_p {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*記事タイトル*/
	#works_p .title {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	nav.breadcrumb {
		position: relative;
		width: 94%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	nav.breadcrumb ul {
		display: flex;
		flex-wrap: wrap;
		list-style: none;
		align-items: baseline;
	}
	
	nav.breadcrumb ul li {
		display: inline;
		font-size: 13px;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 13px;
		text-align: left;
		color: #1F3661;
	}
	
	nav.breadcrumb li:not(:last-child) {
		white-space: nowrap;
		margin-bottom: 6px;
	}

	nav.breadcrumb li:not(:last-child)::after {
		content: ">";
		margin: 0 5px 0 5px;
	}
	
	nav.breadcrumb li:last-child {
		overflow-wrap: anywhere;
		word-break: break-all;
		line-height: 23px;
	}

	nav.breadcrumb a {
		color: inherit;
		text-decoration: none;
	}
	
	#works_p .title h1 {
		position: relative;
		width: 310px;
		margin: 30px auto 30px auto;
		font-size: 20px;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 30px;
		text-align: left;
		color: #364D78;
	}
	
	#works_p .title .img {
		position: relative;
		width: 310px;
		height: 210px;
		margin: 0 auto 0 auto;
		border-radius: 15px;
		overflow: hidden;
		background: #F2F2F2;
	}
	
	#works_p .title .img img {
		display: block;
		position: relative;
		width: auto;
		height: 210px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}
	
	#works_p .title .cat {
		position: relative;
		width: 260px;
		height: auto;
		margin: 15px auto 0 auto;
		padding: 0 0 40px 0;
	}
	
	#works_p .title .cat::before {
		content: "";
		z-index: -1;
		position: absolute;
		bottom: 0;
		left: -150%;
		width: 1000%;
		height: 220px;
		background: #364D78;
	}
	
	#works_p .title .cat ul {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#works_p .title .cat ul li {
		display: block;
		position: relative;
		margin-bottom: 8px;
		padding-left: 20px;
		font-size: 12px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #fff;
		list-style: none;
	}
	
	#works_p .title .cat ul li font {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
	}
	
	#works_p .title .cat ul li img {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
		width: 15px;
		height: auto;
	}
	
	/*記事内容*/
	#works_p .post {
		position: relative;
		width: 100%;
		height: auto;
		margin: 45px auto 45px auto;
	}
	
	/*本文*/
	#works_p .post .acf01 {
		position: relative;
		width: 340px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#works_p .post .acf01 p {
		
	}
	
	/*スライドショー*/
	#works_p .post .acf02 {
		position: relative;
		width: 350px;
		height: auto;
		margin: 45px auto 30px auto;
	}
	
	.works-gallery {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.works-gallery .works-main-slider {
		position: relative;
		width: 310px;
		height: 240px;
		margin: 0 auto 0 auto;
		border-radius: 15px;
		overflow: hidden;
		background: #F2F2F2;
	}

	.works-gallery .works-main-slider img {
		display: block;
		position: relative;
		width: auto;
		height: 240px;
		margin: 0 auto 0 auto;
		object-position: center;
		object-fit: cover;
	}

	.works-slider-arrow {
		z-index: 10;
		position: absolute;
		top: 43%;
		width: 35px;
		height: 35px;
		border: 2px solid #fff;
		border-radius: 100px;
		background: #364D78;
		color: #fff;
		font-size: 16px;
		line-height: 16px;
		cursor: pointer;
		transform: translateY(-50%);
		transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
	}
	
	.works-slider-prev {
		left: 0;
	}

	.works-slider-next {
		right: 0;
	}

	.works-thumb-slider {
		display: none!important;
	}

	.works-slider-pagination {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  width: 310px;
  height: auto;
  margin: 24px auto 0 auto;
}

.works-slider-pagination .swiper-pagination-bullet {
  display: block;
  width: 5px;
  height: 5px;
  margin: 0 !important;
  border-radius: 50%;
  background: #DBDBDB;
  opacity: 1;
}

.works-slider-pagination .swiper-pagination-bullet-active {
  width: 10px;
  height: 10px;
  background: #4C639E;
}

	
	/*担当者コメント*/
	#works_p .post .acf03 {
		position: relative;
		width: 370px;
		height: auto;
		margin: 0 auto 0 auto;
		padding: 20px 20px 20px 20px;
		border-radius: 5px;
		background: #E2E6EB;
		box-sizing: border-box;
	}
	
	#works_p .post .acf03 h3 {
		position: relative;
		padding-left: 35px;
		margin-bottom: 12px;
		font-size: 17px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 17px;
		text-align: left;
		color: #1F3661;
	}
	
	#works_p .post .acf03 h3 img {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 23px;
		height: auto;
	}
	
	/*フリースペース*/
	#works_p .post .acf04 {
		position: relative;
		width: 340px;
		height: auto;
		margin: 30px auto 0 auto;
	}
	
	#works_p .post .acf04 h1,
	#works_p .post .acf04 h2,
	#works_p .post .acf04 h3,
	#works_p .post .acf04 h4 {
		margin: 20px auto 15px auto;
		font-size: 17px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 27px;
		text-align: left;
		color: #1F3661;
	}
	
	/*最新の施工事例を見る*/
	#works_p .latest {
		position: relative;
		width: 100%;
		height: auto;
		padding: 55px 0 45px 0;
	}
	
	#works_p .latest::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: url(/wp-content/themes/cf_theme/images/post/works_backimg_smp.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	#works_p .latest h2 {
		font-size: 20px;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 20px;
		text-align: center;
		color: #fff;
	}
	
	#works_p .latest .latest-scroll {
  position: relative;
  width: 100%;
  margin: 30px auto 0 auto;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

#works_p .latest .latest-scroll::-webkit-scrollbar {
  display: none;
}
	
	#works_p .latest .loop {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: max-content;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#works_p .latest .loop a {
		display: block;
		position: relative;
		width: 220px;
		height: auto;
		margin: 0 10px 0 10px;
	}
	
	#works_p .latest .loop a:first-of-type {
		margin-left: 30px;
	}
	
	#works_p .latest .loop a:last-of-type {
		margin-right: 30px;
	}
	
	#works_p .latest .loop  a .img {
		position: relative;
		width: 220px;
		height: 150px;
		border-radius: 10px;
		overflow: hidden;
	}
	
	#works_p .latest .loop a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 150px;
		object-fit: cover;
		object-position: center;
	}
	
	#works_p .latest .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 15px auto 0 auto;
	}
	
	#works_p .latest .loop a .text p {
		margin-bottom: 12px;
		font-size: 14px;
		font-weight: 500;
		color: #fff;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#works_p .latest .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 7px 0;
		font-size: 12px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #fff;
	}
	
	#works_p .latest .latest-scrollbar {
  position: relative;
  width: 300px;
  height: 8px;
  margin: 20px auto 30px auto;
  border-radius: 100px;
  background: #d9d9d9;
  overflow: hidden;
}

#works_p .latest .latest-scrollbar span {
  display: block;
  width: 80px;
  height: 100%;
  border-radius: 100px;
  background: #4c639e;
  transform: translateX(0);
}
	
	#works_p .latest .common_btn {
		width: 300px;
		margin: 0 auto 0 auto;
		color: #fff;
		background: #1F3661;
		border: solid 2px #fff;
	}
	
	#works_p .latest .common_btn::after {
		right: 25px;
		background-image: url(/wp-content/themes/cf_theme/images/post/right_white.png);
	}

}

/*
130.窓辺の日記帳＿一覧
131.窓辺の日記帳＿カテゴリ一覧
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	/*全体*/
	#blog_l {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#blog_l .text_mv {
		padding: 100px 0 100px 0;
	}
	
	/*カテゴリー*/
	#blog_l .cat {
		position: relative;
		width: 1140px;
		height: auto;
		margin: 0 auto 50px auto;
	}
	
	#blog_l .cat table {
		position: relative;
		width: 100%;
		height: auto;
		border-collapse: collapse;
	}
	
	#blog_l .cat table tr th {
		position: relative;
		width: 200px;
		height: auto;
		padding: 10px 0 0 35px;
		font-size: 20px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 20px;
		text-align: left;
		color: #1F3661;
		box-sizing: border-box;
		vertical-align: top;
	}
	
	#blog_l .cat table tr th img {
		display: block;
		position: absolute;
		top: 10px;
		left: 0;
		width: 25px;
		height: auto;
	}
	
	#blog_l .cat table tr td {
		position: relative;
		width: 940px;
		height: auto;
	}
	
	#blog_l .cat table tr td ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#blog_l .cat table tr td ul li {
		list-style: none;
		position: relative;
		margin: 0 10px 10px 0;
	}
	
	#blog_l .cat table tr ul li a {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		padding: 12px 20px 12px 20px;
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #1F3661;
		background: #fff;
		border: solid 1px #1F3661;
		box-sizing: border-box;
		border-radius: 100px;
		overflow: hidden;
		transition: 0.3s;
	}
	
	#blog_l .cat table tr ul li a span {
		z-index: 3;
		position: relative;
	}
	
	
	#blog_l .cat table tr ul li a:hover {
		color: #fff;
		background: #92A0C6;
		border: solid 1px #92A0C6;
	}
	
	#blog_l .cat table tr ul li.current-cat a {
		color: #fff;
		background: #1F3661;
		border: solid 1px #1F3661;
	}
	
	/*記事一覧*/
	#blog_l .loop {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 1260px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#blog_l .loop a {
		display: block;
		position: relative;
		width: 285px;
		height: auto;
		margin: 0 15px 50px 15px;
	}
	
	#blog_l .loop a .img {
		position: relative;
		width: 285px;
		height: 190px;
		border-radius: 20px;
		overflow: hidden;
	}
	
	#blog_l .loop a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 190px;
		object-fit: cover;
		object-position: center;
		transition: 0.4s;
	}
	
	#blog_l .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 20px auto 0 auto;
	}
	
	#blog_l .loop a .text p {
		text-decoration: underline;
		text-decoration-color: transparent;
		text-decoration-thickness: 1px;
		text-underline-offset: 2px;
		transition: text-decoration-color 0.4s;
	}
	
	#blog_l .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		padding: 7px 10px 8px 10px;
		margin: 15px auto 15px 0;
		font-size: 15px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 15px;
		text-align: center;
		color: #1F3661;
		border: solid 1px #1F3661;
		border-radius: 100px;
		box-sizing: border-box;
	}
	
	#blog_l .loop a .text time {
		font-size: 16px;
		font-family: "Poppins", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #1F3661;
	}
	
	#blog_l .loop a:hover .img img {
		transform: scale(1.2);
	}
	
	#blog_l .loop a:hover .text p {
		text-decoration-color: #1F3661;
	}
	
	/*ページネーション*/
	#blog_l .pagination {
		margin-bottom: 90px;
	}
 
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*全体*/
	#blog_l {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#blog_l .text_mv {
		padding: 45px 0 30px 0;
	}
	
	/*カテゴリー*/
	#blog_l .cat {
		position: relative;
		width: 360px;
		height: auto;
		margin: 0 auto 35px auto;
	}
	
	#blog_l .cat table {
		position: relative;
		width: 100%;
		height: auto;
		border-collapse: collapse;
	}
	
	#blog_l .cat table tr th {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		padding: 0 0 15px 30px;
		font-size: 16px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #1F3661;
		box-sizing: border-box;
		vertical-align: top;
	}
	
	#blog_l .cat table tr th img {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 18px;
		height: auto;
	}
	
	#blog_l .cat table tr td {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#blog_l .cat table tr td ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		position: relative;
		width: 100%;
		height: auto;
	}
	
	#blog_l .cat table tr td ul li {
		list-style: none;
		position: relative;
		margin: 0 8px 8px 0;
	}
	
	#blog_l .cat table tr ul li a {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		padding: 6px 10px 6px 10px;
		font-size: 12px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 12px;
		text-align: left;
		color: #1F3661;
		background: #fff;
		border: solid 1px #1F3661;
		box-sizing: border-box;
		border-radius: 100px;
		overflow: hidden;
	}
	
	#blog_l .cat table tr ul li a span {
		z-index: 3;
		position: relative;
	}
	
	#blog_l .cat table tr ul li a::before,
	#blog_l .cat table tr ul li a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 100px;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
	}
	#blog_l .cat table tr ul li a::before {
		background: #92A0C6;
	}
	
	#blog_l .cat table tr ul li a::after {
		background: #1F3661;
		transition-delay: 0.12s;
	}
	
	#blog_l .cat table tr ul li.current-cat a {
		color: #fff;
		background: #1F3661;
		border: solid 1px #1F3661;
	}
	
	/*記事一覧*/
	#blog_l .loop {
		position: relative;
		width: 300px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#blog_l .loop a {
		display: block;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 30px auto;
	}
	
	#blog_l .loop a .img {
		position: relative;
		width: 100%;
		height: 200px;
		border-radius: 10px;
		overflow: hidden;
	}
	
	#blog_l .loop a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 200px;
		object-fit: cover;
		object-position: center;
	}
	
	#blog_l .loop a .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 15px auto 0 auto;
	}
	
	#blog_l .loop a .text p {
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 26px;
		text-align: left;
	}
	
	#blog_l .loop a .text font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		padding: 5px 10px 5px 10px;
		margin: 12px auto 10px 0;
		font-size: 12px;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 12px;
		text-align: center;
		color: #1F3661;
		border: solid 1px #1F3661;
		border-radius: 100px;
		box-sizing: border-box;
	}
	
	#blog_l .loop a .text time {
		font-size: 12px;
		font-family: "Poppins", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #1F3661;
	}
	
	/*ページネーション*/
	#blog_l .pagination {
		margin-bottom: 45px;
	}
	
}

/*
132.窓辺の日記帳＿個別
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	/*全体*/
	#blog_p {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom: 90px;
	}
	
	#blog_p::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 530px;
		background-image: url(/wp-content/themes/cf_theme/images/post/blog_backimg_pc.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	/*記事タイトル*/
	#blog_p .title {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		position: relative;
		width: 1280px;
		height: auto;
		margin: 60px auto 60px auto;
	}
	
	#blog_p .title .text {
		position: relative;
		width: 580px;
		height: auto;
		margin: 30px 80px 0 auto;
	}
	
	#blog_p .title .text h1 {
		font-size: 32px;
		font-weight: 700;
		letter-spacing: 2px;
		line-height: 46px;
		text-align: left;
		color: #fff;
	}
	
	#blog_p .title .text .cat {
		position: relative;
		width: 100%;
		height: auto;
		margin: 40px auto 0 auto;
	}
	
	#blog_p .title .text .cat font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		padding: 8px 14px 9px 14px;
		font-size: 15px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 15px;
		text-align: center;
		color: #1F3661;
		background: #fff;
		border: solid 1px #1F3661;
		border-radius: 100px;
		box-sizing: border-box;
	}
	
	#blog_p .title .text time {
		position: absolute;
		bottom: 8px;
		right: 0;
		font-size: 16px;
		font-family: "Poppins", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: left;
		color: #fff;
	}
	
	#blog_p .title .img {
		position: relative;
		width: 530px;
		height: 350px;
		border-radius: 20px;
		overflow: hidden;
	}
	
	#blog_p .title .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 350px;
		object-fit: cover;
		object-position: center;
	}
	
	/*記事内容*/
	#blog_p .post {
		position: relative;
		width: 970px;
		height: auto;
		margin: 0 auto 60px auto;
	}
	
	#blog_p .post p {
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 26px;
		text-align: left;
		color: #1F3661;
	}
	
	#blog_p .post div.h2_top {
		margin-top: 50px;
	}
	
	#blog_p .post div.h2_bottom {
		margin-bottom: 30px;
	}
	
	#blog_p .post h2 {
		display: inline;
		position: relative;
		padding-bottom: 6px;
		margin: 30px 0 30px 0;
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 50px;
		text-align: left;
		color: #1F3661;
		border-bottom: dashed 1px #1F3661;
	}
	
	#blog_p .post h3,
	#blog_p .post h4 {
		display: table;
		position: relative;
		margin: 30px 0 30px 0;
		font-size: 18px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 28px;
		text-align: left;
		color: #4C639E;
	}
	
	#blog_p .post img {
		display: block;
		position: relative;
		margin: 30px auto 30px 0;
		width: auto;
		height: auto;
		object-fit: cover;
		object-position: center;
	}
	
	#blog_p .post iframe {
		display: block;
		position: relative;
		width: 600px;
		height: 340px;
		margin: 30px auto 30px 0;
	}
	
	/*前後記事*/
	#blog_p .nav {
		position: relative;
		width: 1280px;
		height: auto;
		margin: 0 auto 0 auto;
	}
	
	#blog_p .nav::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 100%;
		height: 100%;
		border-radius: 500px;
		background: #364D78;
	}
	
	#blog_p .nav .con {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
		width: 1080px;
		height: auto;
		margin: 0 auto 0 auto;
		padding: 70px 0 70px 0;
	}
	
	#blog_p .nav .con a {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		position: relative;
		width: 460px;
		height: auto;
	}
	
	#blog_p .nav .con a .img {
		position: relative;
		width: 160px;
		height: 105px;
		border-radius: 20px;
		overflow: hidden;
	}
	
	#blog_p .nav .con a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 105px;
		object-fit: cover;
		object-position: center;
		border-radius: 0;
		transition: 0.3s;
	}
	
	#blog_p .nav .con a .text {
		position: relative;
		width: 270px;
		height: auto;
	}
	
	#blog_p .nav .con a .text h4 {
		position: relative;
		margin-bottom: 12px;
		font-size: 18px;
		font-family: "Zen Kaku Gothic New", sans-serif;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 18px;
		color: #fff;
	}
	
	#blog_p .nav .con a .text h4 img {
		position: absolute;
		top: 54%;
		transform: translateY(-50%) translateX(0);
		width: 12px;
		height: auto;
	}
	
	#blog_p .nav .con a .text p {
		position: relative;
		color: #fff;
	}
	
	#blog_p .nav .con a .text p span {
		display: inline;
		padding-bottom: 1px;
		border-bottom: 1px solid transparent;
		box-decoration-break: clone;
		-webkit-box-decoration-break: clone;
		transition: border-color 0.4s ease;
	}
	
	#blog_p .nav .con a:hover .text p span {
		border-bottom-color: currentColor;
	}
	
	#blog_p .nav .con a.prevpost {
		flex-direction: row;
	}
	
	#blog_p .nav .con a.prevpost .text h4 {
		padding-left: 30px;
		text-align: left;
	}
	
	#blog_p .nav .con a.prevpost .text h4 img {
		left: 0;
	}
	
	#blog_p .nav .con a.nextpost {
		position: absolute;
		top: 50%;
		transform: translateY(-50%) translateX(0);
		right: 0;
		flex-direction: row-reverse;
	}
	
	#blog_p .nav .con a.nextpost .text h4 {
		padding-right: 30px;
		text-align: right;
	}
	
	#blog_p .nav .con a.nextpost .text h4 img {
		right: 0;
	}
	
	#blog_p .nav .con a:hover .img img {
		transform: scale(1.2);
	}
	
	/*一覧を見るボタン*/
	#blog_p .nav .btn {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 120px;
		height: auto;
		padding: 60px 0 0 0;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: center;
		color: #fff;
		transition: 0.4s;
	}
	
	#blog_p .nav .btn font {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		width: 50px;
		height: 50px;
		border-radius: 100px;
		background: #fff;
		border: solid 1px #fff;
		box-sizing: border-box;
		transition: 0.4s;
	}
	
	#blog_p .nav .btn font::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 15px;
		height: 15px;
		background-image: url(/wp-content/themes/cf_theme/images/post/blog_dot_before.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
		transition: 0.4s;
	}
	
	#blog_p .nav .btn:hover font {
		background: #364D78;
		border: solid 1px #fff;
	}
	
	#blog_p .nav .btn:hover font::before {
		background-image: url(/wp-content/themes/cf_theme/images/post/blog_dot_after.png);
	}

	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	/*全体*/
	#blog_p {
		position: relative;
		width: 100%;
		height: auto;
		margin-bottom: 45px;
	}
	
	#blog_p::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 480px;
		background-image: url(/wp-content/themes/cf_theme/images/post/blog_backimg_smp.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}
	
	/*記事タイトル*/
	#blog_p .title {
		position: relative;
		width: 320px;
		height: auto;
		margin: 45px auto 30px auto;
	}
	
	#blog_p .title .text {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 30px auto;
	}
	
	#blog_p .title .text h1 {
		font-size: 20px;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 30px;
		text-align: left;
		color: #fff;
	}
	
	#blog_p .title .text .cat {
		position: relative;
		width: 100%;
		height: auto;
		margin: 15px auto 0 auto;
	}
	
	#blog_p .title .text .cat font {
		display: table;
		position: relative;
		width: auto;
		height: auto;
		padding: 5px 10px 6px 10px;
		font-size: 12px;
		font-weight: 400;
		letter-spacing: 0.5px;
		line-height: 12px;
		text-align: center;
		color: #1F3661;
		background: #fff;
		border: solid 1px #1F3661;
		border-radius: 100px;
		box-sizing: border-box;
	}
	
	#blog_p .title .text time {
		position: absolute;
		bottom: 5px;
		right: 0;
		font-size: 12px;
		font-family: "Poppins", sans-serif;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 12px;
		text-align: left;
		color: #fff;
	}
	
	#blog_p .title .img {
		position: relative;
		width: 320px;
		height: 210px;
		border-radius: 10px;
		overflow: hidden;
	}
	
	#blog_p .title .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 210px;
		object-fit: cover;
		object-position: center;
	}
	
	/*記事内容*/
	#blog_p .post {
		position: relative;
		width: 320px;
		height: auto;
		margin: 0 auto 45px auto;
	}
	
	#blog_p .post p {
		font-size: 15px;
		font-weight: 400;
		letter-spacing: 1px;
		line-height: 25px;
		text-align: left;
		color: #1F3661;
	}
	
	#blog_p .post div.h2_top {
		margin-top: 45px;
	}
	
	#blog_p .post div.h2_bottom {
		margin-bottom: 20px;
	}
	
	#blog_p .post h2 {
		position: relative;
		padding-bottom: 3px;
		margin: 20px 0 20px 0;
		font-size: 17px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 27px;
		text-align: left;
		color: #1F3661;
		border-bottom: dashed 1px #1F3661;
	}
	
	#blog_p .post h3,
	#blog_p .post h4 {
		display: table;
		position: relative;
		margin: 20px 0 20px 0;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 26px;
		text-align: left;
		color: #4C639E;
	}
	
	#blog_p .post img {
		display: block;
		position: relative;
		margin: 20px auto 20px 0;
		width: auto;
		height: auto;
		object-fit: cover;
		object-position: center;
	}
	
	#blog_p .post iframe {
		display: block;
		position: relative;
		width: 100%;
		height: 200px;
		margin: 20px auto 20px 0;
	}
	
	/*前後記事*/
	#blog_p .nav {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 70px auto;
	}
	
	#blog_p .nav::before {
		content: "";
		z-index: -1;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 100%;
		height: 100%;
		border-radius: 30px;
		background: #364D78;
	}
	
	#blog_p .nav .con {
		position: relative;
		width: 350px;
		height: auto;
		padding: 45px 0 15px 0;
		margin: 0 auto 0 auto;
	}
	
	#blog_p .nav .con a {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 30px auto;
	}
	
	#blog_p .nav .con a .img {
		position: relative;
		width: 110px;
		height: 75px;
		border-radius: 15px;
		overflow: hidden;
	}
	
	#blog_p .nav .con a .img img {
		display: block;
		position: relative;
		width: 100%;
		height: 75px;
		object-fit: cover;
		object-position: center;
	}
	
	#blog_p .nav .con a .text {
		position: relative;
		width: 220px;
		height: auto;
	}
	
	#blog_p .nav .con a .text h4 {
		position: relative;
		margin-bottom: 8px;
		font-size: 15px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 15px;
		color: #fff;
	}
	
	#blog_p .nav .con a .text h4 img {
		position: absolute;
		top: 52%;
		transform: translateY(-50%) translateX(0);
		width: 12px;
		height: auto;
	}
	
	#blog_p .nav .con a .text p {
		position: relative;
		color: #fff;
	}
	
	#blog_p .nav .con a.prevpost {
		flex-direction: row;
	}
	
	#blog_p .nav .con a.prevpost .text h4 {
		padding-left: 20px;
		text-align: left;
	}
	
	#blog_p .nav .con a.prevpost .text h4 img {
		left: 0;
	}
	
	#blog_p .nav .con a.nextpost .text h4 {
		padding-right: 20px;
		text-align: left;
	}
	
	#blog_p .nav .con a.nextpost .text h4 img {
		left: 75px;
	}
	
	/*一覧を見るボタン*/
	#blog_p .nav .btn {
		display: block;
		position: absolute;
		bottom: -50px;
		left: 50%;
		transform: translateY(0) translateX(-50%);
		width: 150px;
		height: auto;
		padding-left: 65px;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 16px;
		text-align: right;
		color: #364D78;
		box-sizing: border-box;
	}
	
	#blog_p .nav .btn font {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%) translateX(0);
		width: 50px;
		height: 50px;
		border-radius: 100px;
		background: #fff;
		border: solid 1px #364D78;
		box-sizing: border-box;
	}
	
	#blog_p .nav .btn font::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		width: 18px;
		height: 18px;
		background-image: url(/wp-content/themes/cf_theme/images/post/blog_dot_before.png);
		background-size: 100% 100%;
		background-repeat: no-repeat;
		background-position: center;
	}
	
}

/*
ページネーション（施工事例＆窓辺の日記帳）
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	.pagination {
		display: table;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
		text-align: center;
	}
		
	.pagination ul {
		display: inline-block;
		width: auto;
		height: auto;
		margin: 0 auto;
	}
		
	.pagination ul li {
		list-style: none;
		float: left;
	}
	
	.pagination ul li a {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 25px 0 25px;
		font-size: 30px;
		font-family: "Poppins", sans-serif;
		font-weight: 600;
		line-height: 30px;
		text-align: center;
		color: #C3C3C3;
		transition: 0.3s;
	}
	
	.pagination ul li a:hover {
		color: #1F3661;
		text-decoration: underline;
	}

	.pagination span {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 25px 0 25px;
		font-size: 30px;
		font-family: "Poppins", sans-serif;
		font-weight: 600;
		line-height: 30px;
		text-align: center;
		color: #1F3661;
		transition: 0.2s;
	}
		
	.pagination span.current {
		color: #1F3661;
		text-decoration: underline;
	}
	
	.pagination .prev {
		display: none;
	}
	
	.pagination .next {
		display: none;
	}
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	.pagination {
		display: table;
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 0 auto;
		text-align: center;
	}
		
	.pagination ul {
		display: inline-block;
		width: auto;
		height: auto;
		margin: 0 auto;
	}
		
	.pagination ul li {
		list-style: none;
		float: left;
	}
	
	.pagination ul li a {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 20px 0 20px;
		font-size: 25px;
		font-family: "Poppins", sans-serif;
		font-weight: 600;
		line-height: 25px;
		text-align: center;
		color: #C3C3C3;
	}

	.pagination span {
		display: block;
		position: relative;
		width: auto;
		height: auto;
		margin: 0 20px 0 20px;
		font-size: 25px;
		font-family: "Poppins", sans-serif;
		font-weight: 600;
		line-height: 25px;
		text-align: center;
		color: #1F3661;
	}
		
	.pagination span.current {
		color: #1F3661;
		text-decoration: underline;
	}
	
	.pagination .prev {
		display: none;
	}
	
	.pagination .next {
		display: none;
	}

}

/*
140.プライバシーポリシー
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	#privacy {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#privacy .text_mv {
		padding: 100px 0 100px 0;
	}
	
	/*コンテンツ*/
	#privacy .con {
		position: relative;
		width: 910px;
		height: auto;
		margin: 0 auto 90px auto;
	}
	
	#privacy .con .ptn {
		position: relative;
		width: 100%;
		height: auto;
		margin: 40px auto 0 auto;
	}
	
	#privacy .con .ptn h2 {
		margin: 0 auto 20px auto;
		font-size: 26px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 26px;
		color: #1F3661;
		text-align: left;
	}
	
	#privacy .con .ptn p.indent {
		text-indent: -1em;
		padding-left: 1em;
	}
	
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	#privacy {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#privacy .text_mv {
		padding: 45px 0 45px 0;
	}
	
	/*コンテンツ*/
	#privacy .con {
		position: relative;
		width: 88%;
		height: auto;
		margin: 0 auto 70px auto;
	}
	
	#privacy .con .ptn {
		position: relative;
		width: 100%;
		height: auto;
		margin: 30px auto 0 auto;
	}
	
	#privacy .con .ptn h2 {
		margin: 0 auto 15px auto;
		font-size: 18px;
		font-weight: 500;
		letter-spacing: 1px;
		line-height: 18px;
		color: #1F3661;
		text-align: left;
		white-space: nowrap;
	}
	
	#privacy .con .ptn p.indent {
		text-indent: -1em;
		padding-left: 1em;
	}
	
}

/*
150.404エラー
*/
/*PC*/
@media only screen and (min-width: 1025px) {
	#er {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#er .text_mv {
		padding: 100px 0 60px 0;
	}
	
	/*コンテンツ*/
	#er .con {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0 auto 120px auto;
	}
	
	#er .con p {
		margin: 0 auto 0 auto;
		text-align: center;
	}
	
	#er .con a.common_btn {
		width: 380px;
		margin: 45px auto 0 auto;
	}
}

/*SMP*/
@media only screen and (max-width: 1024px) {
	#er {
		position: relative;
		width: 100%;
		height: auto;
	}
	
	/*メインビジュアル*/
	#er .text_mv {
		padding: 80px 0 40px 0;
	}
	
	/*コンテンツ*/
	#er .con {
		position: relative;
		width: 88%;
		height: auto;
		margin: 0 auto 80px auto;
	}
	
	#er .con p {
		margin: 0 auto 0 auto;
		text-align: left;
	}
	
	#er .con p.indent {
		text-indent: -1.2em;
		padding-left: 1.2em;
	}
	
	#er .con a.common_btn {
		width: 290px;
		margin: 30px auto 0 auto;
	}
}

/*CF7設定*/
/* selectの標準矢印を消す */
.wpcf7-form-control-wrap select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding-right: 2.2em;
}

/*送信後メッセージ削除*/
div.wpcf7 .ajax-loader {
    display: none !important;
}

.wpcf7-mail-sent-ok{
    display:none!important;
}

.wpcf7 form.sent .wpcf7-response-output {
	margin: 0;
	padding: 0;
	border: 0px solid rgba(255,255,255,0.00);
	color: rgba(255,255,255,0.00);
}

/* 確認画面のフィールド背景色や枠線を消す */
input.wpcf7c-conf, textarea.wpcf7c-conf, select.wpcf7c-conf {
  border: 0;
  padding: 0;
  background: rgba(255,255,255,0.00);
}

.wpcf7-text:-webkit-autofill {
  box-shadow: 0 0 0 1000px #FFF inset;
}

.wpcf7-select:-webkit-autofill {
  box-shadow: 0 0 0 1000px #FFF inset;
}

.wpcf7.is_confirm input:-webkit-autofill {
    box-shadow: 0 0 0px 1000px #FFF inset;
}

.wpcf7.is_confirm select:-webkit-autofill {
    box-shadow: 0 0 0px 1000px #FFF inset;
}

.wpcf7-spinner {
	display: none!important;
}

/*ファイル選択範囲*/
#contact .con #form .codedropz-upload-inner {
	box-sizing: border-box;
}

#contact .con #form .codedropz-upload-handler {
  cursor: pointer;
}

#contact .con #form .codedropz-upload-handler .cd-upload-btn {
  cursor: pointer;
}

#contact .con #form .codedropz-btn-wrap {
	display: none;
}