diff --git a/builder/buildtool.py b/builder/buildtool.py
index 5c005fe..08449e3 100644
--- a/builder/buildtool.py
+++ b/builder/buildtool.py
@@ -271,7 +271,7 @@ def _manupaper_rows_from_(val, lang: em.LangType, columns: int) -> int:
     elif isinstance(val, act.TagAction):
         return 0
     elif isinstance(val, act.Action):
-        return utl.int_ceiled(_descs_count_from_(val, lang), columns)
+        return _descs_count_from_(val, lang)
     else:
         return 0
 
@@ -279,7 +279,10 @@ def _manupaper_rows_from_(val, lang: em.LangType, columns: int) -> int:
 def _manupaper_rows_from_in(vals: [act.ActionGroup, list, tuple],
         lang: em.LangType, columns: int) -> int:
     group = vals.actions if isinstance(vals, act.ActionGroup) else vals
-    return sum([_manupaper_rows_from_(v, lang, columns) for v in group])
+    if isinstance(vals, act.ActionGroup) and vals.group_type is em.GroupType.COMBI:
+        return utl.int_ceiled(sum(_manupaper_rows_from_(v, lang, columns) for v in group), columns)
+    else:
+        return sum([utl.int_ceiled(_manupaper_rows_from_(v, lang, columns), columns) for v in group])
 
 
 def _maintitle_from(story: list) -> list:

Check: character count when combined
combine した時にちゃんと行と文字数がカウントできているか
===

**Description**
combine時の確認。
間違っていたら修正。

diff --git a/tests/test_buildtool.py b/tests/test_buildtool.py
index c794c9b..b873256 100644
--- a/tests/test_buildtool.py
+++ b/tests/test_buildtool.py
@@ -157,6 +157,25 @@ class PrivateMethodsTest(unittest.TestCase):
             with self.subTest(v=v, lang=lang, expected=expected):
                 self.assertEqual(btl._estimated_description_count_from(v, lang), expected)
 
+    def test_manupaper_rows_from_in(self):
+        from builder import world
+        w = world.World("test")
+        data = [
+                ((self.taro.be().d("test"), self.taro.be().d("apple"),),
+                    em.LangType.JPN, 20, 2),
+                ((w.combine(
+                    self.taro.be().d("test"), self.taro.be().d("apple"),
+                    ),),
+                    em.LangType.JPN, 20, 1),
+                (w.combine(
+                    self.taro.be().d("test apple"), self.taro.be().d("test orange"),
+                    ),
+                    em.LangType.JPN, 20, 2),
+                ]
+        for v, lang, columns, expected in data:
+            with self.subTest(v=v, lang=lang, columns=columns, expected=expected):
+                self.assertEqual(btl._manupaper_rows_from_in(v, lang, columns), expected)
+
     def test_output_to_console(self):
         data = [
                 (["test"], False,

pip install -e .
parse_log_pytest
pytest
pytest
3.9
pytest --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning
exceptiongroup @ file:///croot/exceptiongroup_1706031385326/work
iniconfig @ file:///home/linux1/recipes/ci/iniconfig_1610983019677/work
packaging @ file:///croot/packaging_1734472117206/work
pluggy @ file:///croot/pluggy_1733169602837/work
pytest @ file:///croot/pytest_1738938843180/work
-e git+https://github.com/nagisc007/storybuilder.git@d711a90a6034bb61c176ccc809b367450c469fee#egg=StoryBuilder
tomli @ file:///opt/conda/conda-bld/tomli_1657175507142/work

name: storybuilder
channels:
  - defaults
  - https://repo.anaconda.com/pkgs/main
  - https://repo.anaconda.com/pkgs/r
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - ca-certificates=2025.2.25=h06a4308_0
  - exceptiongroup=1.2.0=py39h06a4308_0
  - iniconfig=1.1.1=pyhd3eb1b0_0
  - ld_impl_linux-64=2.40=h12ee557_0
  - libffi=3.4.4=h6a678d5_1
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - ncurses=6.4=h6a678d5_0
  - openssl=3.0.16=h5eee18b_0
  - packaging=24.2=py39h06a4308_0
  - pip=25.0=py39h06a4308_0
  - pluggy=1.5.0=py39h06a4308_0
  - pytest=8.3.4=py39h06a4308_0
  - python=3.9.21=he870216_1
  - readline=8.2=h5eee18b_0
  - setuptools=75.8.0=py39h06a4308_0
  - sqlite=3.45.3=h5eee18b_0
  - tk=8.6.14=h39e8969_0
  - tomli=2.0.1=py39h06a4308_0
  - tzdata=2025a=h04d1e81_0
  - wheel=0.45.1=py39h06a4308_0
  - xz=5.6.4=h5eee18b_1
  - zlib=1.2.13=h5eee18b_1
prefix: /opt/conda/envs/storybuilder

tests/test_buildtool.py::PrivateMethodsTest::test_manupaper_rows_from_in
tests/test_buildtool.py::PrivateMethodsTest::test_action_from tests/test_buildtool.py::PrivateMethodsTest::test_acttypes_percents_from tests/test_buildtool.py::PrivateMethodsTest::test_charcount_from tests/test_buildtool.py::PrivateMethodsTest::test_contents_title_from tests/test_buildtool.py::PrivateMethodsTest::test_descs_count_from tests/test_buildtool.py::PrivateMethodsTest::test_descs_from tests/test_buildtool.py::PrivateMethodsTest::test_estimated_description_count_from tests/test_buildtool.py::PrivateMethodsTest::test_output_to_console tests/test_buildtool.py::PrivateMethodsTest::test_output_to_file
builder/buildtool.py
builder/buildtool.py