@charset "utf-8";

/*
Theme Name: portals_responsive
Author: portals
*/
/*==================================
* reset
* html5doctor.com Reset Stylesheet
* v1.6.1
* Last Updated: 2010-09-17
* Author: Richard Clark - http://richclarkdesign.com
* Twitter: @rich_clark
==================================*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
html,body {
	height: 100%
  }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

img {
	vertical-align: top;
	font-size: 0;
	line-height: 0;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colors to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colors to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-weight: bold;
}

em {
	font-style: normal !important;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border color to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

address {
	font-style: normal;
}

/* clearfix */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

/*==================================
WordPress Natie Styles
editor
==================================*/
img.wp-smiley,
img.emoji {
	height: 2% !important;
	width: 2% !important;
}

.post p {
	display: block;
	margin: 1em;
}

.post strong {
	font-weight: bold;
}

.post em {
	font-style: oblique;
}

.post blockquote {
	display: block;
	-webkit-margin-before: 1em;
	-webkit-margin-after: 1em;
	-webkit-margin-start: 40px;
	-webkit-margin-end: 40px;
}

.post ul {
	list-style: disc;
	margin: 0 3em 1em;
}

.post ol {
	margin: 0 3em 1em;
}

/* img */
.aligncenter {
	display: block;
	margin: 0 auto 8px;
}

img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto;
	max-width: 100%;
}

/*==================================
SP_base
==================================*/
.clear {
	clear: both;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

.img_left,
.img_right {
	margin: 0 auto 0.5em;
}

.img_center {
	display: block;
	margin: 0 auto 16px;
}

.only_pc {
	display: none;
}

img {
	display: block;
	margin: 0 auto;
	width: auto;
	max-width: 100%;
	height: auto;
}

a:link {
	color: #000d99;
}

a:visited {
	color: #551a8b;
}

a:hover {
	color: #000d99;
}

a:active {
	color: #b71c1c;
}

body {
	overflow-x: hidden;
	background: #fff;
	color: #674c2e;
	font-size: 16px;
	line-height: 1.5;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
		Meiryo, Osaka, sans-serif;
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, "Helvetica Neue", Arial, sans-serif;
	/* 游明朝(transform rotateは明朝体の時だけ設定)
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
transform: rotate(.03deg); */
	/* 游ゴシック(font-weightはゴシック体の時のみ設定)
font-family: YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN",	"Hiragino Sans", Meiryo, "Helvetica Neue", Arial, sans-serif;
font-weight: 500; */
}

/*==================================
SP_header
==================================*/
. {
	/* background: url(image/body_bg.png) repeat-x top left #FAF1F1 fixed; */
	/* background-image: linear-gradient(180deg, rgba(250, 177, 191, 1), rgba(250, 239, 239, 1)); */
}
.container::after{/*擬似要素をつくる*/
	position: fixed;/*固定配置*/
	z-index: -1;
	top: 0; left: 0;/*左上に固定*/
	width: 100%; height: 100%;/*画面全体を覆う*/
	content: "";
	background-image: -moz-linear-gradient( 90deg, rgb(251,242,223) 0%, rgb(250,182,31) 100%);
  background-image: -webkit-linear-gradient( 90deg, rgb(251,242,223) 0%, rgb(250,182,31) 100%);
  background-image: -ms-linear-gradient( 90deg, rgb(251,242,223) 0%, rgb(250,182,31) 100%);
 
	  }

#header {
	position: relative;
	z-index: 999999;
	background: #fff;
}

.h_inner {
	overflow: hidden;
	margin: 0 auto;
	padding: 8px 0;
	width: 98%;
	max-width: 1240px;
	font-size: 11px;
	text-align: center;
	font-weight: normal;
}
.h_logo {
	margin: 8px auto;
	width: 80%;
}
.sp_fix_bt {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 999999;
	display: flex;
	justify-content: center;
	gap: 8px;
	padding: 2%;
	width: 100%;
	background: #fbf1dc;
	box-sizing: border-box;
}
.sp_fix_bt > * {
	width: min(calc(50% - 8px), 364px);//画像の幅のpxを設定
}
/*==================================
SP_layout
==================================*/
.em {
	font-size: 1.2em;
	font-weight: bold;
}
.em_pink {
	font-weight: bold;
	color: #f09a46;
}

.em_line {
	background: linear-gradient(transparent 60%, #ffff5a 0);
}

.m0 {
	margin-bottom: 0 !important;
}
/*==================================
SP_main_wrapper
==================================*/
#main_wrapper {
	width: 98%;
	max-width: 1240px;
	background-color: #fff;
	margin: 0 auto;
	padding: 2rem 0;
}

.conts {
	width: 94%;
	max-width: 1080px;
	margin: 0 auto;
	padding-bottom: 2rem;
}

.conts img {
	margin-bottom: 1rem;
}

.conts p {
	margin-bottom: 0.5rem
}

.p_intro {
	text-align: center;
	font-weight: bold;
}



.main_h2 {
	padding: min(10vw, 8px) 10px;
	background-color: #f09a46;
	color: #fff;
	font-size: 1rem;
	text-align: center;
	margin-bottom: 2rem;
}

.main_h3 {
	text-align: center;
	background-color: #fbf1dc;
	padding: 0.5em;
	margin-bottom: 1rem;
}

.sec_02_list {
	background-image: url(image/bg_sec2.png);
	background-color: #dcdcdc;
	background-position: right top;
	background-repeat: no-repeat;
	background-size: contain;
	margin-bottom: 2rem;
}

.sec_02_list ul li {
	background-color: rgba(255, 255, 255, 0.7);
	display: inline-block;
	font-weight: bold;
	font-size: 1.2em;
	width: 60%;
	text-align: center;
	border-radius: 50px;
	padding: 4px;
	margin: 4px;
}

.sec_02_list ul {
	text-align: right;
	display: flex;
	flex-flow: column;
	padding: 0.5em;
}


.ba_box {
	display: flex;
	flex-direction: column;
	padding: min(10vw, 8px) 10px;
	background: repeating-linear-gradient(315deg, #fff, #fff 3px, #fbf1dc 3px, #fbf1dc 6px);
	margin-bottom: 1rem;
}

.ba_yoko {
	width: 60%;
}

.ba_conts_bottom {
	margin-bottom: 2rem;
}

.ba_conts_bottom img {
	margin-bottom: 1rem;
}

.sec_h3_ngrank {
	border-bottom: #401000 1px solid;
	margin-bottom: 1rem;
}

.sec_h3_ngrank li {
	margin-bottom: 1rem;
}

.sec_03_ngconts {
	margin-bottom: 1rem;
}

.sec_04_txt {
	margin-bottom: 1rem;
}

.sec_05_example li {
	border: #fbf1dc 10px solid;
	margin: 1rem 0;
	padding: 1rem;
}
.ac_conts {
	display: none;
}

.em_conts {
	background-color: #fbf1dc;
	padding: 1em;
	font-weight: bold;
}

.box_reason_conts {
	border: #fbf1dc 10px solid;
	margin: 1rem 0;
	padding: 1rem;
}

.reason_img {
	margin-bottom: 0.5rem !important;
}

.reason_title p {
	font-size: 1.1em;
	border-bottom: #401000 1px solid;
	padding-bottom: 0.5rem;
	margin-bottom: 0.5rem;
}

.reason_comment {
	display: flex;
	justify-content: space-around;
	align-self: flex-start;
	/* 追加 */
	align-items: center;
	/* 追加 */
	margin-top: 1rem;
}

.reason_comment p {
	width: 76%;
	font-size: 0.9em;
	background-color: #f4fce8;
	padding: 0.5em;
	position: relative;
	display: inline-block;
	margin-right: 15px;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
}

.reason_comment p:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #f4fce8;
}

.reason_comment img {
	width: 24%;
	height: auto;
	margin-bottom: 0em;
}

.sec_06_point {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	margin-bottom: 1rem;
}

.sec_06_point img {
	width: 46%;
	margin-bottom: 0;
}
.sec_06_box_owabi {
	background-color: #fbf1dc;
	padding: 1em;
}
.sec_07_txt{
	margin-bottom: 1em;
}
.title_owabi{
	font-size: 1.2em;
	text-align: center;
	font-weight: bold;
}
.em_owabi{
	font-size: 1.2em;;
}
.cv p{
	text-align: center;
	font-weight: bold;
}
.btn_cv {
	display: flex;
	gap: 8px;
}
.sec_07 .p_intro{
	margin: 2em 0;
}
/* 
施術の流れ（3カラム）
*/ 
ol.block_flow_column {
	counter-reset: flow_list;
}
ol.block_flow_column li {
	display: flex;
	flex-direction: column;
	padding: 1em .8em;
	box-sizing: border-box;
}
ol.block_flow_column li > :first-child {
	order: 1;
}
ol.block_flow_column li > :nth-child(2) {
	order: 0;
}
ol.block_flow_column li > :last-child {
	order: 2;
}
ol.block_flow_column li figure {
	position: relative;
}
ol.block_flow_column li figure::before {
	position: absolute;
	top: -16px;
	left: -12px;
	counter-increment: flow_list;
	content: '0'counter(flow_list);
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 2.2em;
	height: 2.2em;
	background: #f09a46;
	color: #fff;
	font-size: clamp(24px,7vw,44px);
	line-height: 1;
	text-align: center;
	border-radius: 50%;
}
ol.block_flow_column li > * {
	margin-top: 8px;
}
.block_flow_column_ttl {
	font-size: clamp(20px,6vw,20px);
	font-weight: bold;
	text-align: center;
}
@media screen and (min-width: 600px) {
	ol.block_flow_column {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: .5em;
	}
	ol.block_flow_column li {
		width: calc(50% - .5em);
	}
	ol.block_flow_column li figure::before {
		font-size: clamp(24px,3.5vw,44px);
	}
	.block_flow_column_ttl {
		font-size: clamp(20px,3vw,32px);
	}
}
@media screen and (min-width: 960px) {
	ol.block_flow_column li {
		width: calc(33% - .5em);
	}
	ol.block_flow_column li figure::before {
		top: -20px;
		left: -16px;
		font-size: clamp(24px,3vw,34px);
	}
	.block_flow_column_ttl {
		font-size: clamp(18px,2.5vw,20px);
	}
}
/* 
QA
*/ 
.qa_conts{
	margin-bottom: 2em;
}
.qa_conts ul li{
	background-color: #fbf1dc;
	padding: 1em;
	margin-bottom:1em;
}
.q_txt{
	position: relative;
	left: 1.8em;
	font-size: 1.1em;
	font-weight: bold;
	margin: 0 1em 1em 0em;
}
.q_txt::before {
    content: "Q.";
	position: absolute;
	top: 0;
	left: -1.8em;
    font-size: 1.1em;
    color: #6eba01;
	padding-right: 0.3em;
}
.a_txt{
	position: relative;
	left: 1.8em;
	margin: 0 1.8em 1em 0em;
}
.a_txt::before {
    content: "A.";
	position: absolute;
	top: 0;
	left: -1.8em;
    font-size: 1.1em;
    color: #FE4D73;
	padding-right: 0.5em;
	font-weight: bold;
}
/* contact */
  .hours__table-wrapper {
	margin-bottom: 1em;
  }
  .hours__table {
	width: 100%;
	max-width: 500px;
	margin: 0 auto 0.5em;
	text-align: center;
	border-collapse: collapse;
  }
  
  .hours__table--bordered .hours__table-header, .hours__table--bordered .hours__table-cell {
	border: 1px solid #410F00;
	text-align: center;
  }
  
  .hours__table-header, .hours__table-cell {
	padding: 0.5em;
	border-bottom: 1px solid #410F00;
	font-size: 0.8em;
  }
  
  .hours__table-header {
	border-bottom: 1px solid #410F00;
	font-weight: bold;
	text-align: center;
  }
.hours__table-header th{
	width: 22%;
  }
  .hours__table-cell {
	font-weight: normal;
  }
  .hours__table_note{
	font-size: 0.9em;
  }
  .contact_access {
    margin: 0 auto 2em;
    display: grid;
    grid-template-columns: 7em 1fr;
    row-gap: .3em;
    line-height: 1.3;
    font-size: 1em;
}
.contact_map iframe {
	aspect-ratio: 16 / 9;
	width: 100% !important;
	height: 100% !important;
}

.to_page_top{
	display: block;
	padding: 0.5em;
	background-color: #f09a46;
	border-radius: 8px;
	max-width: 180px;
	text-align: center;
	margin: 2em 0 1em auto;
}
.to_page_top a:link,.to_page_top a:visited{
	color: #fff;
	text-decoration: none;
}
.to_page_top:hover{
	opacity:.8;
}
.copyright {
	background: #FAEAEB;
	text-align: center;
	padding: 3% 0 ;
	font-size: 1rem;
	font-size: 10px;
}

/*==================================
for iPad~PC
==================================*/
@media screen and (min-width: 782px) {

	/*==================================
PC_base
==================================*/
	a:hover img,
	a:active img {
		-webkit-opacity: 0.7;
		opacity: 0.7;
	}

	.only_sp {
		display: none;
	}

	.only_pc {
		display: block;
	}

	body {
		line-height: 1.6;
		width: 100%;
		max-width: 1240px;
		/*main_imgの幅*/
		margin-top: 0 !important;
	}

	.alignleft img,
	.alignright img {
		max-width: 300px;
		height: auto;
	}



	/*==================================
PC_header
==================================*/
#header {
	padding-bottom: 1rem;
}
.h_inner{
	margin: 0 auto;
	max-width: 1240px;
	padding: 0 1em;
}
.h_inner h1{
	text-align: left;
	font-size: 1rem;
	font-weight: normal;
}
.header_wrapper{
	display: flex;
	justify-content:space-between;
	gap: 20%;
	align-items: center;
}
.h_cv {
	width: 50%;

}
.h_cv ul{
	display: flex;
	justify-content: center;
	gap: 1em;
}
	.h_logo {
		margin: auto;
	}
	.logo img{
		margin:0;
	}
	.h_add{
	font-size: 1rem;
	text-align: right;
	}

/*==================================
PC_main_wrapper
==================================*/
	.main_img {
		text-align: center;
	}
	.main_h2 {
		font-size: 1.8rem;
	}

	.sec_02_list {
		background-image: url(image/bg_sec2.png);
		background-color: #dcdcdc;
		background-position: top;
		background-repeat: no-repeat;
		background-size: contain;
		margin-bottom: 2rem;
	}
	.sec_02_list ul {
        text-align: right;
        display: flex;
        flex-flow: wrap;
        justify-content: space-evenly;
        padding: 4%;
        gap: 4%;
	}
	.sec_02_list ul li {
		background-color: rgba(255, 255, 255, 0.7);
		display: inline-block;
		font-weight: bold;
		font-size: 1.2em;
		width: 30%;
		text-align: center;
		border-radius: 50px;
		padding: 10px;
		margin: 3% 0;
	}
	.p_intro {
		font-size: 1.2em;
	}
	.ba_box{
		flex-direction: unset;
		align-items: flex-end;
		padding: 4rem;

	}
	.ba_yoko {
		width: 24%;
	}
	.ba_conts_bottom {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-evenly;
	}
	.ba_conts_bottom img {
		margin-bottom: 1rem;
		width: 48%;
	}
	
	
	.sec_03_ng {
		display: flex;
		align-items: center;
	}
	.em_conts {
		padding: 1em 4em;
		font-size: 1.2em;
	}
	.box_reason_conts {
		border: #fbf1dc 20px solid;
		padding: 2rem;
	}
.reason_conts{
	display: flex;
}
.reason_conts{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6%;
}
.reason_img{
	width: 30%;
}
.reason_comment img {
    width: 12%;
}
.reason_comment {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-self: flex-start;
    align-items: center;
}
.reason_comment p {
    width: 66%;
    font-size: 0.9em;
    background-color: #f4fce8;
    padding: 0.5em;
    position: relative;
    display: inline-block;
    margin-right: 15px;
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
}

.reason_comment img {
	width: 14%;
	margin: 0;
}
.reason_pic{
	display: flex;
	align-items: center;
}
.reason_pic img{
	width: 33%;
}
.sec_06_point {
    flex-wrap: nowrap;
    margin-bottom: 1rem;
    gap: 3rem;
}
.title_owabi {
    font-size: 1.5em;
}
.btn_cv{
	display: flex;
		justify-content: center;
		gap: 0.5em;
}
.cv p{
	font-size: 1.5em;
}
.sec_07_conts{
	display: flex;
	justify-content: space-between;
	gap:5%;
	align-items: center;
}
.sec_07_conts img{
	width: 40%;
}
.hours__table-header, .hours__table-cell {
	font-size: 1em;
  }
  .hours__table-header th{
	width: 28%;
  }
  .contact_pic img{
	width: 80%;
  }
	/*==================================
PC_contact
==================================*/
	.contact {
		padding: 4em 0;
	}

	.contact_conts {
		width: 98%;
		max-width: 1090px;
		margin: auto;
		gap: 2em;
	}

	.contact_info_box {
		display: flex;
		justify-content: space-between;
		gap: 1em
	}

	.contact_info_box>* {
		width: calc(50% - 1em);
	}

	.contact_info .block_uketsuke {
		margin: 0 auto;
		font-size: 14px;
	}

	.contact_info .block_uketsuke th,
	.contact_info .block_uketsuke td {
		padding: .3em;
		font-size: clamp(14px, 2vw, 24px);
	}

	.contact_info .uketsuke_block_notes {
		font-size: clamp(14px, 1.8vw, 20px);
	}

	.contact_access {
		font-size: clamp(14px, 1.6vw, 18px);
	}

	.contact_bt {
		flex-direction: row;
		justify-content: center;
	}

	.contact_bt>* {
		flex: 1;
	}

	/*==================================
PC_menu sidemenu
==================================*/
	.side_fixed_menu li {
		margin: 0 auto 16px;
	}

	.side_fixed_menu li a

	/*PCサイドバーHOME・アクセスボタン*/
		{
		padding: 16px 0;
		transition: .5s;
	}

	.side_fixed_menu li a:hover {
		opacity: .7;
	}

	/*メニュー（固定ページ/関連メニュー）*/
	.widget_nav_menu,
	#custom_html-13,
	.widget_categories,
	.widget_recent_entries,
	.widget_search,
	.widget_archive,
	.widget_meta {
		width: 100%;
	}

	.widget_nav_menu li a:hover,
	.widget_categories li a:hover,
	.widget_recent_entries li a:hover {
		opacity: 0.7;
	}

	/*==================================
PC_copyright
==================================*/
	.copyright {
		padding: 16px 0;
		margin: 0;
		font-size: 14px;
	}

	/*==================================
PC_footer
==================================*/
	.f_inner {
		display: block;
		overflow: hidden;
		margin: 0 auto;
		padding: 16px 0;
		width: 95%;
		max-width: 1024px;
	}

	/*==================================
PC_voice
==================================*/
	.voice {
		margin: 0 0 40px;
	}

	.voice_list li {
		margin: 0 24px 32px;
		padding: 24px;
	}

	.voice_conts {
		padding: 24px;
	}

	.voice_conts h3 {
		width: 100%;
	}

	.voice_txt {
		clear: right;
		overflow: hidden;
		padding: 0 0 0 16px;
	}

	.voice_pic {
		float: left;
		margin: 0 16px 0 0;
	}

	.voice_pic img {
		display: inline-block;
		margin: 0 0 8px;
		max-width: 100%;
		height: auto;
	}

	/*==================================
PC_toppage
==================================*/
	.top_inner {
		margin: 0 calc(50% - 50vw);
		padding: min(10vw, 80px) calc(50vw - 48%);
	}

	.top_catch h2 {
		margin: 0 0 32px;
	}

	.top_sejutsu_bt {
		margin: 0 0 24px;
	}

	.top_sejutsu_bt li {
		margin: 0 0 8px;
		width: 32.5%;
		text-align: center;
	}

	.top_point_list {
		margin: 0 24px;
	}

	.top_point_list h3 {
		float: left;
		font-size: 26px;
		line-height: 1.3em;
		margin: 0 0 16px;
	}

	.top_point_list h3 img {
		max-width: 70px;
		margin: 0 1vw 0 0;
	}

	.top_point_txt {
		clear: left;
	}

	.top_flow_list li {
		width: 46%;
		margin: 0 6px 22px;
	}

	/*==================================
PC_page
==================================*/
	.banner_area {
		text-align: center;
	}

	.catch_list ul {
		margin: 4px 0;
		float: left;
		width: 432px;
	}

	.catch_list li {
		padding: 6px 0 6px 44px;
		font-size: 18px;
	}

	.catch_list .img_right {
		width: 224px;
		float: right;
	}

	.catch_list .img_right img {
		width: auto;
		height: auto;
		max-width: 224px;
		max-height: 224px;
	}

	/*==================================
PC_access
==================================*/
	.access_info01 p {
		margin: 0;
	}

	.access_info02 {
		clear: both;
	}

	.access_info03 {
		margin: 0 auto;
		width: 500px;
	}

	/*==================================
PC_form
==================================*/
	.form_atention {
		width: 92%;
	}

	.privacy_policy {
		height: 150px;
	}

	/*==================================
PC_Blog
==================================*/
	.date {
		font-size: 13px;
		color: #ccc;
		text-align: right;
	}

	/*==================================
PC_pager
==================================*/
	.navigation {
		width: 630px;
	}
}

/*==================================
PC iPad landscape ~
==================================*/
@media screen and (min-width: 960px) {
	img {
		image-rendering: -webkit-optimize-contrast;
	}

	#contents {
		margin: 0 auto 40px;
		width: 96%;
		max-width: 1090px;
		padding: 48px 36px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	#contents::after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: "";
		clear: both;
		height: 0;
	}

	#form_contents {
		width: 720px;
		margin: 0 auto;
	}

	#main {
		z-index: -1;
		float: right;
		width: 74%;
		max-width: 720px;
	}

	#sidebar {
		display: block;
		float: left;
		width: 25%;
		max-width: 256px;
	}

	#sidebar>div {
		width: 100%;
	}

	/* img */
	.img_left {
		margin: 0 16px 16px 0;
		float: left;
	}

	.img_right {
		margin: 0 0 16px 16px;
		float: right;
	}

	.side_fixed_menu {
		width: 100%;
	}
}

/*==================================
PC Wide
==================================*/
@media screen and (min-width: 1240px) {
	body {
		min-width: 1240px;
		max-width: none;
	}

	.side_fixed_menu {
		width: 100%;
	}
}