@charset "utf-8";
/* 親要素の定義をリセットして作り直す */
#c5.flex_text, .flex_text {
    display: flex !important;
    flex-direction: row-reverse !important; /* ★画像を右、テキストを左に強制入れ替え */
    align-items: flex-start !important;
    justify-content: flex-end !important;
    width: 100% !important;
    gap: 30px !important;
    margin-bottom: 50px !important;
    float: none !important;
    clear: both !important;
}

/* 画像自体のサイズを「350px」で鉄板固定する */
#c5.flex_text img.imgL, .flex_text img.imgL {
    /* サイズ指定（ここを調整してください） */
    width: 350px !important;
    min-width: 350px !important;
    max-width: 350px !important;
    
    /* 高さを自動にして歪みを防ぐ */
    height: auto !important;
    
    /* 絶対に縮ませない、絶対に伸ばさない */
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    
    /* 既存の「左寄せ(float:left)」などの邪魔を消す */
    float: none !important;
    display: block !important;
    margin: 0 !important;
}

/* 左側のテキストエリア */
#c5.flex_text > div, .flex_text > div {
    flex: 1 !important;
    min-width: 0 !important;
    float: none !important;
    text-align: left !important;
}

/* 改善が期待される症状（緑のチップ）の並びを整える */
.ptn_list {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    padding: 0 !important;
    list-style: none !important;
}
#c1 {
	clear: both;
	background-color: #E2F4CD;
	margin:    ;
	padding:    ;
}
#c1 h1,
#c1 div {
	text-align: center;
}
#c2 {
	clear: both;
	margin: 30px 0 50px ;
	padding:    ;
}
#c3 {
	clear: both;
	margin: 0 0 60px ;
	padding: 40px 20px  ;
}
#c3 h3,
#c3 div {
	text-align: center;
}
#c20 {
	clear: both;
	display: none;
	margin: 0 0 60px ;
	padding: 40px 20px  ;
}
#c20 h3,
#c20 div {
	text-align: center;
}
#c4 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c4 h2,
#c4 div {
	text-align: left;
}
#c5 {
	clear: both;
	margin: 0 0 40px ;
	padding:    ;
}
#c5 a.itext, #c5 img, #c5 video {
	width: 600px;
	height: 383px;
}
#c5 h3,
#c5 div {
	text-align: left;
}
#c6 {
	clear: both;
	margin: 0 0 40px ;
	padding:    ;
}
#c6 a.itext, #c6 img, #c6 video {
	width: 600px;
	height: 400px;
}
#c6 h3,
#c6 div {
	text-align: left;
}
#c7 {
	clear: both;
	margin: 0 0 60px ;
	padding:    ;
}
#c7 a.itext, #c7 img, #c7 video {
	width: 600px;
	height: 400px;
}
#c7 h3,
#c7 div {
	text-align: left;
}
#c8 {
	clear: both;
	margin: 0 0 60px ;
	padding: 40px 20px  ;
}
#c8 h2,
#c8 div {
	text-align: center;
}
#c21 {
	clear: both;
	display: none;
	margin: 0 0 60px ;
	padding: 40px 20px  ;
}
#c21 h2,
#c21 div {
	text-align: center;
}
#c9 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c9 h2,
#c9 div {
	text-align: left;
}
#c10 {
	clear: both;
	margin: 0 0 60px ;
	padding:    ;
}
#c10 h2,
#c10 div {
	text-align: left;
}
#c18 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c18 h2,
#c18 div {
	text-align: left;
}
#c19 {
	clear: both;
	margin:    ;
	padding:    ;
}
#c19 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
#c19 > div.box {
	box-sizing: border-box;
	overflow: hidden;
}
#c13 {
	clear: both;
	background-image: url(../images/top/contact_bg.jpg);
	margin: 0 0 -80px ;
	padding: 120px 0  ;
}
#c14 {
	clear: both;
	margin: 0 0 45px ;
	padding:    ;
}
#c14 h3,
#c14 div {
	text-align: left;
}
#c15 {
	clear: both;
	margin: 0 0 20px ;
	padding:    ;
}
#c15 h3,
#c15 div {
	text-align: left;
}
#c16 {
	clear: both;
	margin: 0 0  ;
	padding:    ;
}
#c16 h3,
#c16 div {
	text-align: left;
}
#c17 {
	clear: both;
	margin:    ;
	padding:    ;
}
@media screen and (min-width: 641px) and (max-width: 834px) {
#c1 {
}
#c2 {
}
#c3 {
	margin: 0 0 60px;
}
#c20 {
	display: none;
	margin: 0 0 60px;
}
#c4 {
}
#c5 {
}
#c6 {
}
#c7 {
	margin: 0 0 60px;
}
#c8 {
	margin: 0 0 60px;
}
#c21 {
	display: none;
	margin: 0 0 60px;
}
#c9 {
}
#c10 {
	margin: 0 0 60px;
}
#c18 {
}
#c19 {
}
#c19 {
}
#c13 {
	padding: 120px 0;
}
#c14 {
	margin: 0 0 45px;
}
#c15 {
	margin: 0 0 20px;
}
#c16 {
	margin: 0 0 80px;
}
#c17 {
}
}
@media screen and (max-width: 640px) {
#c1 {
}
#c2 {
}
#c3 {
	display: none;
	margin: 0 0 40px;
}
#c20 {
	display: block;
	margin: 0 0 40px;
}
#c4 {
}
#c5 {
}
#c6 {
}
#c7 {
	margin: 0 0 40px;
}
#c8 {
	display: none;
	margin: 0 0 40px;
}
#c21 {
	display: block;
	margin: 0 0 40px;
}
#c9 {
}
#c10 {
	margin: 0 0 40px;
}
#c18 {
}
#c19 {
}
#c19 {
}
#c13 {
	padding: 60px 0;
}
#c14 {
	margin: 0 0 30px;
}
#c15 {
	margin: 0 0 20px;
}
#c16 {
	margin: 0 0 40px;
}
#c17 {
}
}
